Speedometer: Add an Angular 2 (4.x) TodoMVC implementation
authorrniwa@webkit.org <rniwa@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 12 May 2017 02:55:38 +0000 (02:55 +0000)
committerrniwa@webkit.org <rniwa@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 12 May 2017 02:55:38 +0000 (02:55 +0000)
https://bugs.webkit.org/show_bug.cgi?id=171343

Patch by Addy Osmani <addyosmani@gmail.com> on 2017-05-11
Reviewed by Ryosuke Niwa.

Add a TodoMVC Angular 2 (4.x) implem for the benchmark

* Speedometer/resources/todomvc/architecture-examples/angular/.angular-cli.json: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/.editorconfig: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/README.md: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-app.css: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-common.css: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/favicon.ico: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/index.html: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/inline.b342d102ba4a53bf2002.bundle.js: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/main.779eb2f1ddbe23ac61c7.bundle.js: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/polyfills.2d45a4c73c85e24fe474.bundle.js: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/styles.d41d8cd98f00b204e980.bundle.css: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/dist/vendor.b4be818cb6d8028f9192.bundle.js: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.e2e-spec.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.po.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/e2e/tsconfig.e2e.json: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/karma.conf.js: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/package.json: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/protractor.conf.js: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.css: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.html: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.spec.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.module.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.spec.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.spec.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/assets/.gitkeep: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-app.css: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-common.css: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.prod.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/favicon.ico: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/index.html: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/main.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/polyfills.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/styles.css: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/test.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.app.json: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.spec.json: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/src/typings.d.ts: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/tsconfig.json: Added.
* Speedometer/resources/todomvc/architecture-examples/angular/tslint.json: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@216721 268f45cc-cd09-0410-ab3c-d52691b4dbfc

41 files changed:
PerformanceTests/ChangeLog
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/.angular-cli.json [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/.editorconfig [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/README.md [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-app.css [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-common.css [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/favicon.ico [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/index.html [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/inline.b342d102ba4a53bf2002.bundle.js [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/main.779eb2f1ddbe23ac61c7.bundle.js [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/polyfills.2d45a4c73c85e24fe474.bundle.js [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/vendor.b4be818cb6d8028f9192.bundle.js [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.e2e-spec.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.po.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/tsconfig.e2e.json [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/karma.conf.js [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/package.json [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/protractor.conf.js [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.html [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.spec.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.module.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.spec.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.spec.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-app.css [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-common.css [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.prod.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/favicon.ico [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/index.html [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/main.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/polyfills.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/styles.css [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/test.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.app.json [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.spec.json [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/typings.d.ts [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/tsconfig.json [new file with mode: 0644]
PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/tslint.json [new file with mode: 0644]

index 1c5d63b..57bf845 100644 (file)
@@ -1,5 +1,58 @@
 2017-05-11  Addy Osmani  <addyosmani@gmail.com>
 
+        Speedometer: Add an Angular 2 (4.x) TodoMVC implementation
+        https://bugs.webkit.org/show_bug.cgi?id=171343
+
+        Reviewed by Ryosuke Niwa.
+
+        Add a TodoMVC Angular 2 (4.x) implem for the benchmark
+
+        * Speedometer/resources/todomvc/architecture-examples/angular/.angular-cli.json: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/.editorconfig: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/README.md: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-app.css: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-common.css: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/favicon.ico: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/index.html: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/inline.b342d102ba4a53bf2002.bundle.js: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/main.779eb2f1ddbe23ac61c7.bundle.js: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/polyfills.2d45a4c73c85e24fe474.bundle.js: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/styles.d41d8cd98f00b204e980.bundle.css: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/dist/vendor.b4be818cb6d8028f9192.bundle.js: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.e2e-spec.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.po.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/e2e/tsconfig.e2e.json: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/karma.conf.js: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/package.json: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/protractor.conf.js: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.css: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.html: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.spec.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.module.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.spec.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.spec.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/assets/.gitkeep: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-app.css: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-common.css: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.prod.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/favicon.ico: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/index.html: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/main.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/polyfills.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/styles.css: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/test.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.app.json: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.spec.json: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/src/typings.d.ts: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/tsconfig.json: Added.
+        * Speedometer/resources/todomvc/architecture-examples/angular/tslint.json: Added.
+
+2017-05-11  Addy Osmani  <addyosmani@gmail.com>
+
         Speedometer: Add a Vue.js TodoMVC implementation
         https://bugs.webkit.org/show_bug.cgi?id=171325
 
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/.angular-cli.json b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/.angular-cli.json
new file mode 100644 (file)
index 0000000..44692fa
--- /dev/null
@@ -0,0 +1,57 @@
+{
+  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
+  "project": {
+    "name": "todo-app"
+  },
+  "apps": [
+    {
+      "root": "src",
+      "outDir": "dist",
+      "assets": [
+        "assets",
+        "favicon.ico"
+      ],
+      "index": "index.html",
+      "main": "main.ts",
+      "polyfills": "polyfills.ts",
+      "test": "test.ts",
+      "tsconfig": "tsconfig.app.json",
+      "testTsconfig": "tsconfig.spec.json",
+      "prefix": "app",
+      "styles": [
+        "styles.css"
+      ],
+      "scripts": [],
+      "environmentSource": "environments/environment.ts",
+      "environments": {
+        "dev": "environments/environment.ts",
+        "prod": "environments/environment.prod.ts"
+      }
+    }
+  ],
+  "e2e": {
+    "protractor": {
+      "config": "./protractor.conf.js"
+    }
+  },
+  "lint": [
+    {
+      "project": "src/tsconfig.app.json"
+    },
+    {
+      "project": "src/tsconfig.spec.json"
+    },
+    {
+      "project": "e2e/tsconfig.e2e.json"
+    }
+  ],
+  "test": {
+    "karma": {
+      "config": "./karma.conf.js"
+    }
+  },
+  "defaults": {
+    "styleExt": "css",
+    "component": {}
+  }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/.editorconfig b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/.editorconfig
new file mode 100644 (file)
index 0000000..6e87a00
--- /dev/null
@@ -0,0 +1,13 @@
+# Editor configuration, see http://editorconfig.org
+root = true
+
+[*]
+charset = utf-8
+indent_style = space
+indent_size = 2
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+[*.md]
+max_line_length = off
+trim_trailing_whitespace = false
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/README.md b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/README.md
new file mode 100644 (file)
index 0000000..1015359
--- /dev/null
@@ -0,0 +1,28 @@
+# TodoApp
+
+This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.0.0.
+
+## Development server
+
+Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.
+
+## Code scaffolding
+
+Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive/pipe/service/class/module`.
+
+## Build
+
+Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `-prod` flag for a production build.
+
+## Running unit tests
+
+Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
+
+## Running end-to-end tests
+
+Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).
+Before running the tests make sure you are serving the app via `ng serve`.
+
+## Further help
+
+To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-app.css b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-app.css
new file mode 100644 (file)
index 0000000..10e3d2f
--- /dev/null
@@ -0,0 +1,370 @@
+html,
+body {
+    margin: 0;
+    padding: 0;
+}
+
+button {
+    margin: 0;
+    padding: 0;
+    border: 0;
+    background: none;
+    font-size: 100%;
+    vertical-align: baseline;
+    font-family: inherit;
+    font-weight: inherit;
+    color: inherit;
+    -webkit-appearance: none;
+    appearance: none;
+    -webkit-font-smoothing: antialiased;
+    -moz-osx-font-smoothing: grayscale;
+}
+
+body {
+    font: 14px 'Helvetica Neue', Helvetica, Arial, sans-serif;
+    line-height: 1.4em;
+    background: #f5f5f5;
+    color: #4d4d4d;
+    min-width: 230px;
+    max-width: 550px;
+    margin: 0 auto;
+    -webkit-font-smoothing: antialiased;
+    -moz-osx-font-smoothing: grayscale;
+    font-weight: 300;
+}
+
+:focus {
+    outline: 0;
+}
+
+.hidden {
+    display: none;
+}
+
+.todoapp {
+    background: #fff;
+    margin: 130px 0 40px 0;
+    position: relative;
+    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2),
+                0 25px 50px 0 rgba(0, 0, 0, 0.1);
+}
+
+.todoapp input::-webkit-input-placeholder {
+    font-style: italic;
+    font-weight: 300;
+    color: #e6e6e6;
+}
+
+.todoapp input::-moz-placeholder {
+    font-style: italic;
+    font-weight: 300;
+    color: #e6e6e6;
+}
+
+.todoapp input::input-placeholder {
+    font-style: italic;
+    font-weight: 300;
+    color: #e6e6e6;
+}
+
+.todoapp h1 {
+    position: absolute;
+    top: -155px;
+    width: 100%;
+    font-size: 100px;
+    font-weight: 100;
+    text-align: center;
+    color: rgba(175, 47, 47, 0.15);
+    -webkit-text-rendering: optimizeLegibility;
+    -moz-text-rendering: optimizeLegibility;
+    text-rendering: optimizeLegibility;
+}
+
+.new-todo,
+.edit {
+    position: relative;
+    margin: 0;
+    width: 100%;
+    font-size: 24px;
+    font-family: inherit;
+    font-weight: inherit;
+    line-height: 1.4em;
+    border: 0;
+    color: inherit;
+    padding: 6px;
+    border: 1px solid #999;
+    box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2);
+    box-sizing: border-box;
+    -webkit-font-smoothing: antialiased;
+    -moz-osx-font-smoothing: grayscale;
+}
+
+.new-todo {
+    padding: 16px 16px 16px 60px;
+    border: none;
+    background: rgba(0, 0, 0, 0.003);
+    box-shadow: inset 0 -2px 1px rgba(0,0,0,0.03);
+}
+
+.main {
+    position: relative;
+    z-index: 2;
+    border-top: 1px solid #e6e6e6;
+}
+
+label[for='toggle-all'] {
+    display: none;
+}
+
+.toggle-all {
+    position: absolute;
+    top: -55px;
+    left: -12px;
+    width: 60px;
+    height: 34px;
+    text-align: center;
+    border: none; /* Mobile Safari */
+}
+
+.toggle-all:before {
+    content: '❯';
+    font-size: 22px;
+    color: #e6e6e6;
+    padding: 10px 27px 10px 27px;
+}
+
+.toggle-all:checked:before {
+    color: #737373;
+}
+
+.todo-list {
+    margin: 0;
+    padding: 0;
+    list-style: none;
+}
+
+.todo-list li {
+    position: relative;
+    font-size: 24px;
+    border-bottom: 1px solid #ededed;
+}
+
+.todo-list li:last-child {
+    border-bottom: none;
+}
+
+.todo-list li.editing {
+    border-bottom: none;
+    padding: 0;
+}
+
+.todo-list li.editing .edit {
+    display: block;
+    width: 506px;
+    padding: 12px 16px;
+    margin: 0 0 0 43px;
+}
+
+.todo-list li.editing .view {
+    display: none;
+}
+
+.todo-list li .toggle {
+    text-align: center;
+    width: 40px;
+    /* auto, since non-WebKit browsers doesn't support input styling */
+    height: auto;
+    position: absolute;
+    top: 0;
+    bottom: 0;
+    margin: auto 0;
+    border: none; /* Mobile Safari */
+    -webkit-appearance: none;
+    appearance: none;
+}
+
+.todo-list li .toggle:after {
+    content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="-10 -18 100 135"><circle cx="50" cy="50" r="50" fill="none" stroke="#ededed" stroke-width="3"/></svg>');
+}
+
+.todo-list li .toggle:checked:after {
+    content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="-10 -18 100 135"><circle cx="50" cy="50" r="50" fill="none" stroke="#bddad5" stroke-width="3"/><path fill="#5dc2af" d="M72 25L42 71 27 56l-4 4 20 20 34-52z"/></svg>');
+}
+
+.todo-list li label {
+    word-break: break-all;
+    padding: 15px 60px 15px 15px;
+    margin-left: 45px;
+    display: block;
+    line-height: 1.2;
+    transition: color 0.4s;
+}
+
+.todo-list li.completed label {
+    color: #d9d9d9;
+    text-decoration: line-through;
+}
+
+.todo-list li .destroy {
+    display: none;
+    position: absolute;
+    top: 0;
+    right: 10px;
+    bottom: 0;
+    width: 40px;
+    height: 40px;
+    margin: auto 0;
+    font-size: 30px;
+    color: #cc9a9a;
+    margin-bottom: 11px;
+    transition: color 0.2s ease-out;
+}
+
+.todo-list li .destroy:hover {
+    color: #af5b5e;
+}
+
+.todo-list li .destroy:after {
+    content: '×';
+}
+
+.todo-list li:hover .destroy {
+    display: block;
+}
+
+.todo-list li .edit {
+    display: none;
+}
+
+.todo-list li.editing:last-child {
+    margin-bottom: -1px;
+}
+
+.footer {
+    color: #777;
+    padding: 10px 15px;
+    height: 20px;
+    text-align: center;
+    border-top: 1px solid #e6e6e6;
+}
+
+.footer:before {
+    content: '';
+    position: absolute;
+    right: 0;
+    bottom: 0;
+    left: 0;
+    height: 50px;
+    overflow: hidden;
+    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2),
+                0 8px 0 -3px #f6f6f6,
+                0 9px 1px -3px rgba(0, 0, 0, 0.2),
+                0 16px 0 -6px #f6f6f6,
+                0 17px 2px -6px rgba(0, 0, 0, 0.2);
+}
+
+.todo-count {
+    float: left;
+    text-align: left;
+}
+
+.todo-count strong {
+    font-weight: 300;
+}
+
+.filters {
+    margin: 0;
+    padding: 0;
+    list-style: none;
+    position: absolute;
+    right: 0;
+    left: 0;
+}
+
+.filters li {
+    display: inline;
+}
+
+.filters li a {
+    color: inherit;
+    margin: 3px;
+    padding: 3px 7px;
+    text-decoration: none;
+    border: 1px solid transparent;
+    border-radius: 3px;
+}
+
+.filters li a:hover {
+    border-color: rgba(175, 47, 47, 0.1);
+}
+
+.filters li a.selected {
+    border-color: rgba(175, 47, 47, 0.2);
+}
+
+.clear-completed,
+html .clear-completed:active {
+    float: right;
+    position: relative;
+    line-height: 20px;
+    text-decoration: none;
+    cursor: pointer;
+}
+
+.clear-completed:hover {
+    text-decoration: underline;
+}
+
+.info {
+    margin: 65px auto 0;
+    color: #bfbfbf;
+    font-size: 10px;
+    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+    text-align: center;
+}
+
+.info p {
+    line-height: 1;
+}
+
+.info a {
+    color: inherit;
+    text-decoration: none;
+    font-weight: 400;
+}
+
+.info a:hover {
+    text-decoration: underline;
+}
+
+/*
+    Hack to remove background from Mobile Safari.
+    Can't use it globally since it destroys checkboxes in Firefox
+*/
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+    .toggle-all,
+    .todo-list li .toggle {
+        background: none;
+    }
+
+    .todo-list li .toggle {
+        height: 40px;
+    }
+
+    .toggle-all {
+        -webkit-transform: rotate(90deg);
+        transform: rotate(90deg);
+        -webkit-appearance: none;
+        appearance: none;
+    }
+}
+
+@media (max-width: 430px) {
+    .footer {
+        height: 50px;
+    }
+
+    .filters {
+        bottom: 10px;
+    }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-common.css b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-common.css
new file mode 100644 (file)
index 0000000..4d25d3c
--- /dev/null
@@ -0,0 +1,141 @@
+hr {
+    margin: 20px 0;
+    border: 0;
+    border-top: 1px dashed #c5c5c5;
+    border-bottom: 1px dashed #f7f7f7;
+}
+
+.learn a {
+    font-weight: normal;
+    text-decoration: none;
+    color: #b83f45;
+}
+
+.learn a:hover {
+    text-decoration: underline;
+    color: #787e7e;
+}
+
+.learn h3,
+.learn h4,
+.learn h5 {
+    margin: 10px 0;
+    font-weight: 500;
+    line-height: 1.2;
+    color: #000;
+}
+
+.learn h3 {
+    font-size: 24px;
+}
+
+.learn h4 {
+    font-size: 18px;
+}
+
+.learn h5 {
+    margin-bottom: 0;
+    font-size: 14px;
+}
+
+.learn ul {
+    padding: 0;
+    margin: 0 0 30px 25px;
+}
+
+.learn li {
+    line-height: 20px;
+}
+
+.learn p {
+    font-size: 15px;
+    font-weight: 300;
+    line-height: 1.3;
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+#issue-count {
+    display: none;
+}
+
+.quote {
+    border: none;
+    margin: 20px 0 60px 0;
+}
+
+.quote p {
+    font-style: italic;
+}
+
+.quote p:before {
+    content: '“';
+    font-size: 50px;
+    opacity: .15;
+    position: absolute;
+    top: -20px;
+    left: 3px;
+}
+
+.quote p:after {
+    content: '”';
+    font-size: 50px;
+    opacity: .15;
+    position: absolute;
+    bottom: -42px;
+    right: 3px;
+}
+
+.quote footer {
+    position: absolute;
+    bottom: -40px;
+    right: 0;
+}
+
+.quote footer img {
+    border-radius: 3px;
+}
+
+.quote footer a {
+    margin-left: 5px;
+    vertical-align: middle;
+}
+
+.speech-bubble {
+    position: relative;
+    padding: 10px;
+    background: rgba(0, 0, 0, .04);
+    border-radius: 5px;
+}
+
+.speech-bubble:after {
+    content: '';
+    position: absolute;
+    top: 100%;
+    right: 30px;
+    border: 13px solid transparent;
+    border-top-color: rgba(0, 0, 0, .04);
+}
+
+.learn-bar > .learn {
+    position: absolute;
+    width: 272px;
+    top: 8px;
+    left: -300px;
+    padding: 10px;
+    border-radius: 5px;
+    background-color: rgba(255, 255, 255, .6);
+    transition-property: left;
+    transition-duration: 500ms;
+}
+
+@media (min-width: 899px) {
+    .learn-bar {
+        width: auto;
+        padding-left: 300px;
+    }
+
+    .learn-bar > .learn {
+        left: 8px;
+    }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/favicon.ico b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/favicon.ico
new file mode 100644 (file)
index 0000000..8081c7c
Binary files /dev/null and b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/favicon.ico differ
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/index.html b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/index.html
new file mode 100644 (file)
index 0000000..76bdc86
--- /dev/null
@@ -0,0 +1,17 @@
+<!doctype html>
+<html>
+<head>
+  <meta charset="utf-8">
+  <title>TodoApp</title>
+
+
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+  <link rel="icon" type="image/x-icon" href="favicon.ico">
+  <link rel="stylesheet" href="assets/css/todomvc-common.css">
+  <link rel="stylesheet" href="assets/css/todomvc-app.css">
+<link href="styles.d41d8cd98f00b204e980.bundle.css" rel="stylesheet"/></head>
+<body>
+  <app-root>Loading...</app-root>
+  <!-- Credits: Addy Osmani -->
+<script type="text/javascript" src="inline.b342d102ba4a53bf2002.bundle.js"></script><script type="text/javascript" src="polyfills.2d45a4c73c85e24fe474.bundle.js"></script><script type="text/javascript" src="vendor.b4be818cb6d8028f9192.bundle.js"></script><script type="text/javascript" src="main.779eb2f1ddbe23ac61c7.bundle.js"></script></body>
+</html>
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/inline.b342d102ba4a53bf2002.bundle.js b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/inline.b342d102ba4a53bf2002.bundle.js
new file mode 100644 (file)
index 0000000..179d9fd
--- /dev/null
@@ -0,0 +1 @@
+!function(e){function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}var n=window.webpackJsonp;window.webpackJsonp=function(t,c,u){for(var a,i,f,l=0,s=[];l<t.length;l++)i=t[l],o[i]&&s.push(o[i][0]),o[i]=0;for(a in c)Object.prototype.hasOwnProperty.call(c,a)&&(e[a]=c[a]);for(n&&n(t,c,u);s.length;)s.shift()();if(u)for(l=0;l<u.length;l++)f=r(r.s=u[l]);return f};var t={},o={4:0};r.e=function(e){function n(){c.onerror=c.onload=null,clearTimeout(u);var r=o[e];0!==r&&(r&&r[1](new Error("Loading chunk "+e+" failed.")),o[e]=void 0)}if(0===o[e])return Promise.resolve();if(o[e])return o[e][2];var t=document.getElementsByTagName("head")[0],c=document.createElement("script");c.type="text/javascript",c.charset="utf-8",c.async=!0,c.timeout=12e4,r.nc&&c.setAttribute("nonce",r.nc),c.src=r.p+""+e+"."+{0:"2d45a4c73c85e24fe474",1:"779eb2f1ddbe23ac61c7",2:"a63205ae4b55b180b58c"}[e]+".chunk.js";var u=setTimeout(n,12e4);c.onerror=c.onload=n;var a=new Promise(function(r,n){o[e]=[r,n]});return o[e][2]=a,t.appendChild(c),a},r.m=e,r.c=t,r.i=function(e){return e},r.d=function(e,n,t){r.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:t})},r.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(n,"a",n),n},r.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r.p="",r.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/main.779eb2f1ddbe23ac61c7.bundle.js b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/main.779eb2f1ddbe23ac61c7.bundle.js
new file mode 100644 (file)
index 0000000..f4492b9
--- /dev/null
@@ -0,0 +1 @@
+webpackJsonp([1,4],{"/fcW":function(t,e){function n(t){throw new Error("Cannot find module '"+t+"'.")}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="/fcW"},0:function(t,e,n){t.exports=n("x35b")},"1A80":function(t,e,n){"use strict";function l(t){return s._15(0,[(t()(),s._16(0,null,null,11,"li",[],[[2,"completed",null]],null,null,null,null)),(t()(),s._17(null,["\n        "])),(t()(),s._16(0,null,null,8,"div",[["class","view"]],null,null,null,null,null)),(t()(),s._17(null,["\n          "])),(t()(),s._16(0,null,null,0,"input",[["class","toggle"],["type","checkbox"]],[[8,"checked",0]],[[null,"click"]],function(t,e,n){var l=!0,o=t.component;if("click"===e){l=!1!==o.toggleTodoComplete(t.context.$implicit)&&l}return l},null,null)),(t()(),s._17(null,["\n          "])),(t()(),s._16(0,null,null,1,"label",[],null,null,null,null,null)),(t()(),s._17(null,["",""])),(t()(),s._17(null,["\n          "])),(t()(),s._16(0,null,null,0,"button",[["class","destroy"]],null,[[null,"click"]],function(t,e,n){var l=!0,o=t.component;if("click"===e){l=!1!==o.removeTodo(t.context.$implicit)&&l}return l},null,null)),(t()(),s._17(null,["\n        "])),(t()(),s._17(null,["\n      "]))],null,function(t,e){t(e,0,0,e.context.$implicit.complete),t(e,4,0,e.context.$implicit.complete),t(e,7,0,e.context.$implicit.title)})}function o(t){return s._15(0,[(t()(),s._16(0,null,null,7,"section",[["class","main"]],null,null,null,null,null)),(t()(),s._17(null,["\n    "])),(t()(),s._16(0,null,null,4,"ul",[["class","todo-list"]],null,null,null,null,null)),(t()(),s._17(null,["\n      "])),(t()(),s._18(8388608,null,null,1,null,l)),s._19(401408,null,0,a.f,[s._0,s._1,s.t],{ngForOf:[0,"ngForOf"]},null),(t()(),s._17(null,["\n    "])),(t()(),s._17(null,["\n  "]))],function(t,e){t(e,5,0,e.component.todos)},null)}function i(t){return s._15(0,[(t()(),s._16(0,null,null,6,"footer",[["class","footer"]],null,null,null,null,null)),(t()(),s._17(null,["\n    "])),(t()(),s._16(0,null,null,3,"span",[["class","todo-count"]],null,null,null,null,null)),(t()(),s._16(0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s._17(null,["",""])),(t()(),s._17(null,[" "," left"])),(t()(),s._17(null,["\n  "]))],null,function(t,e){var n=e.component;t(e,4,0,n.todos.length),t(e,5,0,1==n.todos.length?"item":"items")})}function _(t){return s._15(0,[(t()(),s._16(0,null,null,20,"section",[["class","todoapp"]],null,null,null,null,null)),(t()(),s._17(null,["\n  "])),(t()(),s._16(0,null,null,11,"header",[["class","header"]],null,null,null,null,null)),(t()(),s._17(null,["\n    "])),(t()(),s._16(0,null,null,1,"h1",[],null,null,null,null,null)),(t()(),s._17(null,["Todos"])),(t()(),s._17(null,["\n    "])),(t()(),s._16(0,null,null,5,"input",[["autofocus",""],["class","new-todo"],["placeholder","What needs to be done?"]],[[2,"ng-untouched",null],[2,"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.enter"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(t,e,n){var l=!0,o=t.component;if("input"===e){l=!1!==s._20(t,8)._handleInput(n.target.value)&&l}if("blur"===e){l=!1!==s._20(t,8).onTouched()&&l}if("compositionstart"===e){l=!1!==s._20(t,8)._compositionStart()&&l}if("compositionend"===e){l=!1!==s._20(t,8)._compositionEnd(n.target.value)&&l}if("ngModelChange"===e){l=!1!==(o.newTodo.title=n)&&l}if("keyup.enter"===e){l=!1!==o.addTodo()&&l}return l},null,null)),s._19(8192,null,0,p.d,[s.W,s.V,[2,p.e]],null,null),s._21(512,null,p.f,function(t){return[t]},[p.d]),s._19(335872,null,0,p.g,[[8,null],[8,null],[8,null],[2,p.f]],{model:[0,"model"]},{update:"ngModelChange"}),s._21(1024,null,p.h,null,[p.g]),s._19(8192,null,0,p.i,[p.h],null,null),(t()(),s._17(null,["\n  "])),(t()(),s._17(null,["\n  "])),(t()(),s._18(8388608,null,null,1,null,o)),s._19(8192,null,0,a.g,[s._0,s._1],{ngIf:[0,"ngIf"]},null),(t()(),s._17(null,["\n  "])),(t()(),s._18(8388608,null,null,1,null,i)),s._19(8192,null,0,a.g,[s._0,s._1],{ngIf:[0,"ngIf"]},null),(t()(),s._17(null,["\n"]))],function(t,e){var n=e.component;t(e,10,0,n.newTodo.title),t(e,16,0,n.todos.length>0),t(e,19,0,n.todos.length>0)},function(t,e){t(e,7,0,s._20(e,12).ngClassUntouched,s._20(e,12).ngClassTouched,s._20(e,12).ngClassPristine,s._20(e,12).ngClassDirty,s._20(e,12).ngClassValid,s._20(e,12).ngClassInvalid,s._20(e,12).ngClassPending)})}function r(t){return s._15(0,[(t()(),s._16(0,null,null,2,"app-root",[],null,null,null,_,d)),s._21(256,null,h.a,h.a,[]),s._19(24576,null,0,c.a,[h.a],null,null)],null,null)}var u=n("Ni5f"),s=n("3j3K"),a=n("2Je8"),c=n("YWx4"),p=n("NVOs"),h=n("j3en");n.d(e,"a",function(){return g});var f=[u.a],d=s._14({encapsulation:0,styles:f,data:{}}),g=s._22("app-root",c.a,r,{},{},[])},Iksp:function(t,e,n){"use strict";n.d(e,"a",function(){return l});var l=function(){function t(){}return t}()},Ni5f:function(t,e,n){"use strict";n.d(e,"a",function(){return l});var l=[""]},YWx4:function(t,e,n){"use strict";var l=n("aKa3"),o=n("j3en");n.d(e,"a",function(){return i});var i=function(){function t(t){this.todoDataService=t,this.newTodo=new l.a}return t.prototype.addTodo=function(){this.todoDataService.addTodo(this.newTodo),this.newTodo=new l.a},t.prototype.toggleTodoComplete=function(t){this.todoDataService.toggleTodoComplete(t)},t.prototype.removeTodo=function(t){this.todoDataService.deleteTodoById(t.id)},Object.defineProperty(t.prototype,"todos",{get:function(){return this.todoDataService.getAllTodos()},enumerable:!0,configurable:!0}),t.ctorParameters=function(){return[{type:o.a}]},t}()},aKa3:function(t,e,n){"use strict";n.d(e,"a",function(){return l});var l=function(){function t(t){void 0===t&&(t={}),this.title="",this.complete=!1,Object.assign(this,t)}return t}()},j3en:function(t,e,n){"use strict";n.d(e,"a",function(){return l});var l=function(){function t(){this.lastId=0,this.todos=[]}return t.prototype.addTodo=function(t){return t.id||(t.id=++this.lastId),this.todos.push(t),this},t.prototype.deleteTodoById=function(t){return this.todos=this.todos.filter(function(e){return e.id!==t}),this},t.prototype.updateTodoById=function(t,e){void 0===e&&(e={});var n=this.getTodoById(t);return n?(Object.assign(n,e),n):null},t.prototype.getAllTodos=function(){return this.todos},t.prototype.getTodoById=function(t){return this.todos.filter(function(e){return e.id===t}).pop()},t.prototype.toggleTodoComplete=function(t){return this.updateTodoById(t.id,{complete:!t.complete})},t.ctorParameters=function(){return[]},t}()},kZql:function(t,e,n){"use strict";n.d(e,"a",function(){return l});var l={production:!0}},kke6:function(t,e,n){"use strict";var l=n("3j3K"),o=n("Iksp"),i=n("2Je8"),_=n("Qbdm"),r=n("NVOs"),u=n("Fzro"),s=n("1A80");n.d(e,"a",function(){return p});var a=this&&this.__extends||function(){var t=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])};return function(e,n){function l(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(l.prototype=n.prototype,new l)}}(),c=function(t){function e(e){return t.call(this,e,[s.a],[s.a])||this}return a(e,t),Object.defineProperty(e.prototype,"_LOCALE_ID_12",{get:function(){return null==this.__LOCALE_ID_12&&(this.__LOCALE_ID_12=l.b(this.parent.get(l.c,null))),this.__LOCALE_ID_12},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_NgLocalization_13",{get:function(){return null==this.__NgLocalization_13&&(this.__NgLocalization_13=new i.a(this._LOCALE_ID_12)),this.__NgLocalization_13},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_Compiler_14",{get:function(){return null==this.__Compiler_14&&(this.__Compiler_14=new l.d),this.__Compiler_14},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_APP_ID_15",{get:function(){return null==this.__APP_ID_15&&(this.__APP_ID_15=l.e()),this.__APP_ID_15},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_IterableDiffers_16",{get:function(){return null==this.__IterableDiffers_16&&(this.__IterableDiffers_16=l.f()),this.__IterableDiffers_16},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_KeyValueDiffers_17",{get:function(){return null==this.__KeyValueDiffers_17&&(this.__KeyValueDiffers_17=l.g()),this.__KeyValueDiffers_17},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_DomSanitizer_18",{get:function(){return null==this.__DomSanitizer_18&&(this.__DomSanitizer_18=new _.b(this.parent.get(_.c))),this.__DomSanitizer_18},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_Sanitizer_19",{get:function(){return null==this.__Sanitizer_19&&(this.__Sanitizer_19=this._DomSanitizer_18),this.__Sanitizer_19},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_HAMMER_GESTURE_CONFIG_20",{get:function(){return null==this.__HAMMER_GESTURE_CONFIG_20&&(this.__HAMMER_GESTURE_CONFIG_20=new _.d),this.__HAMMER_GESTURE_CONFIG_20},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_EVENT_MANAGER_PLUGINS_21",{get:function(){return null==this.__EVENT_MANAGER_PLUGINS_21&&(this.__EVENT_MANAGER_PLUGINS_21=[new _.e(this.parent.get(_.c)),new _.f(this.parent.get(_.c)),new _.g(this.parent.get(_.c),this._HAMMER_GESTURE_CONFIG_20)]),this.__EVENT_MANAGER_PLUGINS_21},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_EventManager_22",{get:function(){return null==this.__EventManager_22&&(this.__EventManager_22=new _.h(this._EVENT_MANAGER_PLUGINS_21,this.parent.get(l.h))),this.__EventManager_22},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_ɵDomSharedStylesHost_23",{get:function(){return null==this.__ɵDomSharedStylesHost_23&&(this.__ɵDomSharedStylesHost_23=new _.i(this.parent.get(_.c))),this.__ɵDomSharedStylesHost_23},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_ɵDomRendererFactory2_24",{get:function(){return null==this.__ɵDomRendererFactory2_24&&(this.__ɵDomRendererFactory2_24=new _.j(this._EventManager_22,this._ɵDomSharedStylesHost_23)),this.__ɵDomRendererFactory2_24},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_RendererFactory2_25",{get:function(){return null==this.__RendererFactory2_25&&(this.__RendererFactory2_25=this._ɵDomRendererFactory2_24),this.__RendererFactory2_25},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_ɵSharedStylesHost_26",{get:function(){return null==this.__ɵSharedStylesHost_26&&(this.__ɵSharedStylesHost_26=this._ɵDomSharedStylesHost_23),this.__ɵSharedStylesHost_26},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_Testability_27",{get:function(){return null==this.__Testability_27&&(this.__Testability_27=new l.i(this.parent.get(l.h))),this.__Testability_27},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_Meta_28",{get:function(){return null==this.__Meta_28&&(this.__Meta_28=new _.k(this.parent.get(_.c))),this.__Meta_28},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_Title_29",{get:function(){return null==this.__Title_29&&(this.__Title_29=new _.l(this.parent.get(_.c))),this.__Title_29},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_ɵi_30",{get:function(){return null==this.__ɵi_30&&(this.__ɵi_30=new r.a),this.__ɵi_30},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_BrowserXhr_31",{get:function(){return null==this.__BrowserXhr_31&&(this.__BrowserXhr_31=new u.a),this.__BrowserXhr_31},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_ResponseOptions_32",{get:function(){return null==this.__ResponseOptions_32&&(this.__ResponseOptions_32=new u.b),this.__ResponseOptions_32},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_XSRFStrategy_33",{get:function(){return null==this.__XSRFStrategy_33&&(this.__XSRFStrategy_33=u.c()),this.__XSRFStrategy_33},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_XHRBackend_34",{get:function(){return null==this.__XHRBackend_34&&(this.__XHRBackend_34=new u.d(this._BrowserXhr_31,this._ResponseOptions_32,this._XSRFStrategy_33)),this.__XHRBackend_34},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_RequestOptions_35",{get:function(){return null==this.__RequestOptions_35&&(this.__RequestOptions_35=new u.e),this.__RequestOptions_35},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_Http_36",{get:function(){return null==this.__Http_36&&(this.__Http_36=u.f(this._XHRBackend_34,this._RequestOptions_35)),this.__Http_36},enumerable:!0,configurable:!0}),e.prototype.createInternal=function(){return this._CommonModule_0=new i.b,this._ErrorHandler_1=_.m(),this._APP_INITIALIZER_2=[l.j,_.n(this.parent.get(_.o,null),this.parent.get(l.k,null))],this._ApplicationInitStatus_3=new l.l(this._APP_INITIALIZER_2),this._ɵf_4=new l.m(this.parent.get(l.h),this.parent.get(l.n),this,this._ErrorHandler_1,this.componentFactoryResolver,this._ApplicationInitStatus_3),this._ApplicationRef_5=this._ɵf_4,this._ApplicationModule_6=new l.o(this._ApplicationRef_5),this._BrowserModule_7=new _.p(this.parent.get(_.p,null)),this._ɵba_8=new r.b,this._FormsModule_9=new r.c,this._HttpModule_10=new u.g,this._AppModule_11=new o.a,this._AppModule_11},e.prototype.getInternal=function(t,e){return t===i.b?this._CommonModule_0:t===l.p?this._ErrorHandler_1:t===l.q?this._APP_INITIALIZER_2:t===l.l?this._ApplicationInitStatus_3:t===l.m?this._ɵf_4:t===l.r?this._ApplicationRef_5:t===l.o?this._ApplicationModule_6:t===_.p?this._BrowserModule_7:t===r.b?this._ɵba_8:t===r.c?this._FormsModule_9:t===u.g?this._HttpModule_10:t===o.a?this._AppModule_11:t===l.c?this._LOCALE_ID_12:t===i.c?this._NgLocalization_13:t===l.d?this._Compiler_14:t===l.s?this._APP_ID_15:t===l.t?this._IterableDiffers_16:t===l.u?this._KeyValueDiffers_17:t===_.q?this._DomSanitizer_18:t===l.v?this._Sanitizer_19:t===_.r?this._HAMMER_GESTURE_CONFIG_20:t===_.s?this._EVENT_MANAGER_PLUGINS_21:t===_.h?this._EventManager_22:t===_.i?this._ɵDomSharedStylesHost_23:t===_.j?this._ɵDomRendererFactory2_24:t===l.w?this._RendererFactory2_25:t===_.t?this._ɵSharedStylesHost_26:t===l.i?this._Testability_27:t===_.k?this._Meta_28:t===_.l?this._Title_29:t===r.a?this._ɵi_30:t===u.a?this._BrowserXhr_31:t===u.h?this._ResponseOptions_32:t===u.i?this._XSRFStrategy_33:t===u.d?this._XHRBackend_34:t===u.j?this._RequestOptions_35:t===u.k?this._Http_36:e},e.prototype.destroyInternal=function(){this._ɵf_4.ngOnDestroy(),this.__ɵDomSharedStylesHost_23&&this._ɵDomSharedStylesHost_23.ngOnDestroy()},e}(l.x),p=new l.y(c,o.a)},x35b:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var l=n("3j3K"),o=n("kZql"),i=n("Qbdm"),_=n("kke6");o.a.production&&n.i(l.a)(),n.i(i.a)().bootstrapModuleFactory(_.a)}},[0]);
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/polyfills.2d45a4c73c85e24fe474.bundle.js b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/polyfills.2d45a4c73c85e24fe474.bundle.js
new file mode 100644 (file)
index 0000000..dc55cb2
--- /dev/null
@@ -0,0 +1,43 @@
+webpackJsonp([0,4],{"/whu":function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on  "+t);return t}},"0Rih":function(t,e,n){"use strict";var r=n("OzIq"),o=n("Ds5P"),i=n("R3AP"),a=n("A16L"),u=n("1aA0"),c=n("vmSO"),s=n("9GpA"),f=n("UKM+"),l=n("zgIt"),p=n("qkyc"),h=n("yYvK"),v=n("kic5");t.exports=function(t,e,n,d,y,g){var k=r[t],w=k,m=y?"set":"add",b=w&&w.prototype,_={},T=function(t){var e=b[t];i(b,t,"delete"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!f(t)?void 0:e.call(this,0===t?0:t)}:"add"==t?function(t){return e.call(this,0===t?0:t),this}:function(t,n){return e.call(this,0===t?0:t,n),this})};if("function"==typeof w&&(g||b.forEach&&!l(function(){(new w).entries().next()}))){var O=new w,P=O[m](g?{}:-0,1)!=O,S=l(function(){O.has(1)}),D=p(function(t){new w(t)}),E=!g&&l(function(){for(var t=new w,e=5;e--;)t[m](e,e);return!t.has(-0)});D||(w=e(function(e,n){s(e,w,t);var r=v(new k,e,w);return void 0!=n&&c(n,y,r[m],r),r}),w.prototype=b,b.constructor=w),(S||E)&&(T("delete"),T("has"),y&&T("get")),(E||P)&&T(m),g&&b.clear&&delete b.clear}else w=d.getConstructor(e,t,y,m),a(w.prototype,n),u.NEED=!0;return h(w,t),_[t]=w,o(o.G+o.W+o.F*(w!=k),_),g||d.setStrong(w,t,y),w}},1:function(t,e,n){t.exports=n("XS25")},"1aA0":function(t,e,n){var r=n("ulTY")("meta"),o=n("UKM+"),i=n("WBcL"),a=n("lDLk").f,u=0,c=Object.isExtensible||function(){return!0},s=!n("zgIt")(function(){return c(Object.preventExtensions({}))}),f=function(t){a(t,r,{value:{i:"O"+ ++u,w:{}}})},l=function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,r)){if(!c(t))return"F";if(!e)return"E";f(t)}return t[r].i},p=function(t,e){if(!i(t,r)){if(!c(t))return!0;if(!e)return!1;f(t)}return t[r].w},h=function(t){return s&&v.NEED&&c(t)&&!i(t,r)&&f(t),t},v=t.exports={KEY:r,NEED:!1,fastKey:l,getWeak:p,onFreeze:h}},"2p1q":function(t,e,n){var r=n("lDLk"),o=n("fU25");t.exports=n("bUqO")?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},"2tFN":function(t,e,n){n("CVR+"),n("vmSu"),n("4ZU1"),n("yx1U"),n("X7aK"),n("SPtU"),n("A52B"),n("PuTd"),n("dm+7"),n("JG34"),n("Rw4K"),n("9mGU"),n("bUY0"),n("mTp7"),t.exports=n("7gX0").Reflect},"3q4u":function(t,e,n){var r=n("wCso"),o=n("DIVP"),i=r.key,a=r.map,u=r.store;r.exp({deleteMetadata:function(t,e){var n=arguments.length<3?void 0:i(arguments[2]),r=a(o(e),n,!1);if(void 0===r||!r.delete(t))return!1;if(r.size)return!0;var c=u.get(e);return c.delete(n),!!c.size||u.delete(e)}})},"4ZU1":function(t,e,n){var r=n("lDLk"),o=n("Ds5P"),i=n("DIVP"),a=n("s4j0");o(o.S+o.F*n("zgIt")(function(){Reflect.defineProperty(r.f({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(t,e,n){i(t),e=a(e,!0),i(n);try{return r.f(t,e,n),!0}catch(t){return!1}}})},"7gX0":function(t,e){var n=t.exports={version:"2.4.0"};"number"==typeof __e&&(__e=n)},"7ylX":function(t,e,n){var r=n("DIVP"),o=n("twxM"),i=n("QKXm"),a=n("mZON")("IE_PROTO"),u=function(){},c="prototype",s=function(){var t,e=n("jhxf")("iframe"),r=i.length,o="<",a=">";for(e.style.display="none",n("d075").appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(o+"script"+a+"document.F=Object"+o+"/script"+a),t.close(),s=t.F;r--;)delete s[c][i[r]];return s()};t.exports=Object.create||function(t,e){var n;return null!==t?(u[c]=r(t),n=new u,u[c]=null,n[a]=t):n=s(),void 0===e?n:o(n,e)}},"8D8H":function(t,e,n){var r=n("oeih"),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},"8WbS":function(t,e,n){var r=n("wCso"),o=n("DIVP"),i=n("KOrd"),a=r.has,u=r.key,c=function(t,e,n){if(a(t,e,n))return!0;var r=i(e);return null!==r&&c(t,r,n)};r.exp({hasMetadata:function(t,e){return c(t,o(e),arguments.length<3?void 0:u(arguments[2]))}})},"9GpA":function(t,e){t.exports=function(t,e,n,r){if(!(t instanceof e)||void 0!==r&&r in t)throw TypeError(n+": incorrect invocation!");return t}},"9mGU":function(t,e,n){var r=n("Ds5P"),o=n("DIVP"),i=Object.preventExtensions;r(r.S,"Reflect",{preventExtensions:function(t){o(t);try{return i&&i(t),!0}catch(t){return!1}}})},"9vb1":function(t,e,n){var r=n("bN1p"),o=n("kkCw")("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},A16L:function(t,e,n){var r=n("R3AP");t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},A52B:function(t,e,n){var r=n("x9zv"),o=n("Ds5P"),i=n("DIVP");o(o.S,"Reflect",{getOwnPropertyDescriptor:function(t,e){return r.f(i(t),e)}})},BbyF:function(t,e,n){var r=n("oeih"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},CEne:function(t,e,n){"use strict";var r=n("OzIq"),o=n("lDLk"),i=n("bUqO"),a=n("kkCw")("species");t.exports=function(t){var e=r[t];i&&e&&!e[a]&&o.f(e,a,{configurable:!0,get:function(){return this}})}},"CVR+":function(t,e,n){var r=n("Ds5P"),o=n("XSOZ"),i=n("DIVP"),a=(n("OzIq").Reflect||{}).apply,u=Function.apply;r(r.S+r.F*!n("zgIt")(function(){a(function(){})}),"Reflect",{apply:function(t,e,n){var r=o(t),c=i(n);return a?a(r,e,c):u.call(r,e,c)}})},ChGr:function(t,e,n){n("yJ2x"),n("3q4u"),n("NHaJ"),n("v3hU"),n("zZHq"),n("vsh6"),n("8WbS"),n("yOtE"),n("EZ+5"),t.exports=n("7gX0").Reflect},DIVP:function(t,e,n){var r=n("UKM+");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},Dgii:function(t,e,n){"use strict";var r=n("lDLk").f,o=n("7ylX"),i=n("A16L"),a=n("rFzY"),u=n("9GpA"),c=n("/whu"),s=n("vmSO"),f=n("uc2A"),l=n("KB1o"),p=n("CEne"),h=n("bUqO"),v=n("1aA0").fastKey,d=h?"_s":"size",y=function(t,e){var n,r=v(e);if("F"!==r)return t._i[r];for(n=t._f;n;n=n.n)if(n.k==e)return n};t.exports={getConstructor:function(t,e,n,f){var l=t(function(t,r){u(t,l,e,"_i"),t._i=o(null),t._f=void 0,t._l=void 0,t[d]=0,void 0!=r&&s(r,n,t[f],t)});return i(l.prototype,{clear:function(){for(var t=this,e=t._i,n=t._f;n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=void 0),delete e[n.i];t._f=t._l=void 0,t[d]=0},delete:function(t){var e=this,n=y(e,t);if(n){var r=n.n,o=n.p;delete e._i[n.i],n.r=!0,o&&(o.n=r),r&&(r.p=o),e._f==n&&(e._f=r),e._l==n&&(e._l=o),e[d]--}return!!n},forEach:function(t){u(this,l,"forEach");for(var e,n=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.n:this._f;)for(n(e.v,e.k,this);e&&e.r;)e=e.p},has:function(t){return!!y(this,t)}}),h&&r(l.prototype,"size",{get:function(){return c(this[d])}}),l},def:function(t,e,n){var r,o,i=y(t,e);return i?i.v=n:(t._l=i={i:o=v(e,!0),k:e,v:n,p:r=t._l,n:void 0,r:!1},t._f||(t._f=i),r&&(r.n=i),t[d]++,"F"!==o&&(t._i[o]=i)),t},getEntry:y,setStrong:function(t,e,n){f(t,e,function(t,e){this._t=t,this._k=e,this._l=void 0},function(){for(var t=this,e=t._k,n=t._l;n&&n.r;)n=n.p;return t._t&&(t._l=n=n?n.n:t._t._f)?"keys"==e?l(0,n.k):"values"==e?l(0,n.v):l(0,[n.k,n.v]):(t._t=void 0,l(1))},n?"entries":"values",!n,!0),p(e)}}},Ds5P:function(t,e,n){var r=n("OzIq"),o=n("7gX0"),i=n("2p1q"),a=n("R3AP"),u=n("rFzY"),c="prototype",s=function(t,e,n){var f,l,p,h,v=t&s.F,d=t&s.G,y=t&s.S,g=t&s.P,k=t&s.B,w=d?r:y?r[e]||(r[e]={}):(r[e]||{})[c],m=d?o:o[e]||(o[e]={}),b=m[c]||(m[c]={});d&&(n=e);for(f in n)l=!v&&w&&void 0!==w[f],p=(l?w:n)[f],h=k&&l?u(p,r):g&&"function"==typeof p?u(Function.call,p):p,w&&a(w,f,p,t&s.U),m[f]!=p&&i(m,f,h),g&&b[f]!=p&&(b[f]=p)};r.core=o,s.F=1,s.G=2,s.S=4,s.P=8,s.B=16,s.W=32,s.U=64,s.R=128,t.exports=s},DuR2:function(t,e){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(n=window)}t.exports=n},"EZ+5":function(t,e,n){var r=n("wCso"),o=n("DIVP"),i=n("XSOZ"),a=r.key,u=r.set;r.exp({metadata:function(t,e){return function(n,r){u(t,e,(void 0!==r?o:i)(n),a(r))}}})},FryR:function(t,e,n){var r=n("/whu");t.exports=function(t){return Object(r(t))}},IRJ3:function(t,e,n){"use strict";var r=n("7ylX"),o=n("fU25"),i=n("yYvK"),a={};n("2p1q")(a,n("kkCw")("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=r(a,{next:o(1,n)}),i(t,e+" Iterator")}},JG34:function(t,e,n){var r=n("Ds5P"),o=n("DIVP"),i=Object.isExtensible;r(r.S,"Reflect",{isExtensible:function(t){return o(t),!i||i(t)}})},KB1o:function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},KOrd:function(t,e,n){var r=n("WBcL"),o=n("FryR"),i=n("mZON")("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},LhTa:function(t,e,n){var r=n("rFzY"),o=n("Q6Nf"),i=n("FryR"),a=n("BbyF"),u=n("plSV");t.exports=function(t,e){var n=1==t,c=2==t,s=3==t,f=4==t,l=6==t,p=5==t||l,h=e||u;return function(e,u,v){for(var d,y,g=i(e),k=o(g),w=r(u,v,3),m=a(k.length),b=0,_=n?h(e,m):c?h(e,0):void 0;m>b;b++)if((p||b in k)&&(d=k[b],y=w(d,b,g),t))if(n)_[b]=y;else if(y)switch(t){case 3:return!0;case 5:return d;case 6:return b;case 2:_.push(d)}else if(f)return!1;return l?-1:s||f?f:_}}},MsuQ:function(t,e,n){"use strict";var r=n("Dgii");t.exports=n("0Rih")("Map",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{get:function(t){var e=r.getEntry(this,t);return e&&e.v},set:function(t,e){return r.def(this,0===t?0:t,e)}},r,!0)},NHaJ:function(t,e,n){var r=n("wCso"),o=n("DIVP"),i=n("KOrd"),a=r.has,u=r.get,c=r.key,s=function(t,e,n){if(a(t,e,n))return u(t,e,n);var r=i(e);return null!==r?s(t,r,n):void 0};r.exp({getMetadata:function(t,e){return s(t,o(e),arguments.length<3?void 0:c(arguments[2]))}})},OzIq:function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},PHCx:function(t,e){t.exports=function(t,e,n){var r=void 0===n;switch(e.length){case 0:return r?t():t.call(n);case 1:return r?t(e[0]):t.call(n,e[0]);case 2:return r?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return r?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return r?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},PHqh:function(t,e,n){var r=n("Q6Nf"),o=n("/whu");t.exports=function(t){return r(o(t))}},PuTd:function(t,e,n){var r=n("Ds5P"),o=n("KOrd"),i=n("DIVP");r(r.S,"Reflect",{getPrototypeOf:function(t){return o(i(t))}})},Q6Nf:function(t,e,n){var r=n("ydD5");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},QG7u:function(t,e,n){var r=n("vmSO");t.exports=function(t,e){var n=[];return r(t,!1,n.push,n,e),n}},QKXm:function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},Qh14:function(t,e,n){var r=n("ReGu"),o=n("QKXm");t.exports=Object.keys||function(t){return r(t,o)}},R3AP:function(t,e,n){var r=n("OzIq"),o=n("2p1q"),i=n("WBcL"),a=n("ulTY")("src"),u="toString",c=Function[u],s=(""+c).split(u);n("7gX0").inspectSource=function(t){return c.call(t)},(t.exports=function(t,e,n,u){var c="function"==typeof n;c&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(c&&(i(n,a)||o(n,a,t[e]?""+t[e]:s.join(String(e)))),t===r?t[e]=n:u?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,u,function(){return"function"==typeof this&&this[a]||c.call(this)})},ReGu:function(t,e,n){var r=n("WBcL"),o=n("PHqh"),i=n("ot5s")(!1),a=n("mZON")("IE_PROTO");t.exports=function(t,e){var n,u=o(t),c=0,s=[];for(n in u)n!=a&&r(u,n)&&s.push(n);for(;e.length>c;)r(u,n=e[c++])&&(~i(s,n)||s.push(n));return s}},Rw4K:function(t,e,n){var r=n("Ds5P");r(r.S,"Reflect",{ownKeys:n("YUr7")})},SHe9:function(t,e,n){var r=n("wC1N"),o=n("kkCw")("iterator"),i=n("bN1p");t.exports=n("7gX0").getIteratorMethod=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},SPtU:function(t,e,n){function r(t,e){var n,u,f=arguments.length<3?t:arguments[2];return s(t)===f?t[e]:(n=o.f(t,e))?a(n,"value")?n.value:void 0!==n.get?n.get.call(f):void 0:c(u=i(t))?r(u,e,f):void 0}var o=n("x9zv"),i=n("KOrd"),a=n("WBcL"),u=n("Ds5P"),c=n("UKM+"),s=n("DIVP");u(u.S,"Reflect",{get:r})},"UKM+":function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},"V3l/":function(t,e){t.exports=!1},VWgF:function(t,e,n){var r=n("OzIq"),o="__core-js_shared__",i=r[o]||(r[o]={});t.exports=function(t){return i[t]||(i[t]={})}},W2nU:function(t,e){function n(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function o(t){if(f===setTimeout)return setTimeout(t,0);if((f===n||!f)&&setTimeout)return f=setTimeout,setTimeout(t,0);try{return f(t,0)}catch(e){try{return f.call(null,t,0)}catch(e){return f.call(this,t,0)}}}function i(t){if(l===clearTimeout)return clearTimeout(t);if((l===r||!l)&&clearTimeout)return l=clearTimeout,clearTimeout(t);try{return l(t)}catch(e){try{return l.call(null,t)}catch(e){return l.call(this,t)}}}function a(){d&&h&&(d=!1,h.length?v=h.concat(v):y=-1,v.length&&u())}function u(){if(!d){var t=o(a);d=!0;for(var e=v.length;e;){for(h=v,v=[];++y<e;)h&&h[y].run();y=-1,e=v.length}h=null,d=!1,i(t)}}function c(t,e){this.fun=t,this.array=e}function s(){}var f,l,p=t.exports={};!function(){try{f="function"==typeof setTimeout?setTimeout:n}catch(t){f=n}try{l="function"==typeof clearTimeout?clearTimeout:r}catch(t){l=r}}();var h,v=[],d=!1,y=-1;p.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];v.push(new c(t,e)),1!==v.length||d||o(u)},c.prototype.run=function(){this.fun.apply(null,this.array)},p.title="browser",p.browser=!0,p.env={},p.argv=[],p.version="",p.versions={},p.on=s,p.addListener=s,p.once=s,p.off=s,p.removeListener=s,p.removeAllListeners=s,p.emit=s,p.binding=function(t){throw new Error("process.binding is not supported")},p.cwd=function(){return"/"},p.chdir=function(t){throw new Error("process.chdir is not supported")},p.umask=function(){return 0}},WBcL:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},WcO1:function(t,e,n){var r=n("ReGu"),o=n("QKXm").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},X7aK:function(t,e,n){"use strict";var r=n("Ds5P"),o=n("DIVP"),i=function(t){this._t=o(t),this._i=0;var e,n=this._k=[];for(e in t)n.push(e)};n("IRJ3")(i,"Object",function(){var t,e=this,n=e._k;do{if(e._i>=n.length)return{value:void 0,done:!0}}while(!((t=n[e._i++])in e._t));return{value:t,done:!1}}),r(r.S,"Reflect",{enumerate:function(t){return new i(t)}})},XO1R:function(t,e,n){var r=n("ydD5");t.exports=Array.isArray||function(t){return"Array"==r(t)}},XS25:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n("2tFN"),o=(n.n(r),n("ChGr")),i=(n.n(o),n("ZSR1"));n.n(i)},XSOZ:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},XvUs:function(t,e,n){var r=n("DIVP");t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(e){var i=t.return;throw void 0!==i&&r(i.call(t)),e}}},Y1N3:function(t,e){e.f=Object.getOwnPropertySymbols},Y1aA:function(t,e){e.f={}.propertyIsEnumerable},YUr7:function(t,e,n){var r=n("WcO1"),o=n("Y1N3"),i=n("DIVP"),a=n("OzIq").Reflect;t.exports=a&&a.ownKeys||function(t){var e=r.f(i(t)),n=o.f;return n?e.concat(n(t)):e}},ZDXm:function(t,e,n){"use strict";var r,o=n("LhTa")(0),i=n("R3AP"),a=n("1aA0"),u=n("oYd7"),c=n("fJSx"),s=n("UKM+"),f=a.getWeak,l=Object.isExtensible,p=c.ufstore,h={},v=function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},d={get:function(t){if(s(t)){var e=f(t);return!0===e?p(this).get(t):e?e[this._i]:void 0}},set:function(t,e){return c.def(this,t,e)}},y=t.exports=n("0Rih")("WeakMap",v,d,c,!0,!0);7!=(new y).set((Object.freeze||Object)(h),7).get(h)&&(r=c.getConstructor(v),u(r.prototype,d),a.NEED=!0,o(["delete","has","get","set"],function(t){var e=y.prototype,n=e[t];i(e,t,function(e,o){if(s(e)&&!l(e)){this._f||(this._f=new r);var i=this._f[t](e,o);return"set"==t?this:i}return n.call(this,e,o)})}))},ZSR1:function(t,e,n){(function(t,e){/**
+* @license
+* Copyright Google Inc. All Rights Reserved.
+*
+* Use of this source code is governed by an MIT-style license that can be
+* found in the LICENSE file at https://angular.io/license
+*/
+!function(t,e){e()}(0,function(){"use strict";function n(t,e){for(var n=t.length-1;n>=0;n--)"function"==typeof t[n]&&(t[n]=Zone.current.wrap(t[n],e+"_"+n));return t}function r(t,e){for(var r=t.constructor.name,o=function(o){var i=e[o],a=t[i];a&&(t[i]=function(t){return function(){return t.apply(this,n(arguments,r+"."+i))}}(a))},i=0;i<e.length;i++)o(i)}function o(t,e){var n=Object.getOwnPropertyDescriptor(t,e)||{enumerable:!0,configurable:!0},r=Object.getOwnPropertyDescriptor(t,"original"+e);!r&&n.get&&Object.defineProperty(t,"original"+e,{enumerable:!1,configurable:!0,get:n.get}),delete n.writable,delete n.value;var o=e.substr(2),i=x("_"+e);n.set=function(t){if(this[i]&&this.removeEventListener(o,this[i]),"function"==typeof t){var e=function(e){var n;return n=t.apply(this,arguments),void 0==n||n||e.preventDefault(),n};this[i]=e,this.addEventListener(o,e,!1)}else this[i]=null},n.get=function(){var t=this[i]||null;return null===t&&r&&r.get&&(t=r.get.apply(this,arguments))&&(n.set.apply(this,[t]),"function"==typeof this.removeAttribute&&this.removeAttribute(e)),this[i]||null},Object.defineProperty(t,e,n)}function i(t,e){var n=[];for(var r in t)"on"==r.substr(0,2)&&n.push(r);for(var i=0;i<n.length;i++)o(t,n[i]);if(e)for(var a=0;a<e.length;a++)o(t,"on"+e[a])}function a(t,e,n,r,o){var i=t[R];if(i)for(var a=0;a<i.length;a++){var u=i[a],c=u.data,s=c.handler;if((c.handler===e||s.listener===e)&&c.useCapturing===r&&c.eventName===n)return o&&i.splice(a,1),u}return null}function u(t,e,n){var r=t[R];r||(r=t[R]=[]),n?r.unshift(e):r.push(e)}function c(t,e,n,r,o,i){function c(t){var e=t.data;return u(e.target,t,o),e.invokeAddFunc(f,t)}function s(t){var e=t.data;return a(e.target,t.invoke,e.eventName,e.useCapturing,!0),e.invokeRemoveFunc(l,t)}void 0===n&&(n=!0),void 0===r&&(r=!1),void 0===o&&(o=!1),void 0===i&&(i=L);var f=x(t),l=x(e),p=!n&&void 0;return function(e,n){var o=i(e,n);o.useCapturing=o.useCapturing||p;var u=null;"function"==typeof o.handler?u=o.handler:o.handler&&o.handler.handleEvent&&(u=function(t){return o.handler.handleEvent(t)});var l=!1;try{l=o.handler&&"[object FunctionWrapper]"===o.handler.toString()}catch(t){return}if(!u||l)return o.invokeAddFunc(f,o.handler);if(!r){var h=a(o.target,o.handler,o.eventName,o.useCapturing,!1);if(h)return o.invokeAddFunc(f,h)}var v=Zone.current,d=o.target.constructor.name+"."+t+":"+o.eventName;v.scheduleEventTask(d,u,o,c,s)}}function s(t,e,n){void 0===e&&(e=!0),void 0===n&&(n=L);var r=x(t),o=!e&&void 0;return function(t,e){var i=n(t,e);i.useCapturing=i.useCapturing||o;var u=a(i.target,i.handler,i.eventName,i.useCapturing,!0);u?u.zone.cancelTask(u):i.invokeRemoveFunc(r,i.handler)}}function f(t,e,n,r){return void 0===e&&(e=F),void 0===n&&(n=M),void 0===r&&(r=L),!(!t||!t[e])&&(h(t,e,function(){return c(e,n,!0,!1,!1,r)}),h(t,n,function(){return s(n,!0,r)}),!0)}function l(t){var e=j[t];if(e){j[t]=function(){var r=n(arguments,t);switch(r.length){case 0:this[q]=new e;break;case 1:this[q]=new e(r[0]);break;case 2:this[q]=new e(r[0],r[1]);break;case 3:this[q]=new e(r[0],r[1],r[2]);break;case 4:this[q]=new e(r[0],r[1],r[2],r[3]);break;default:throw new Error("Arg list too long.")}};var r,o=new e(function(){});for(r in o)"XMLHttpRequest"===t&&"responseBlob"===r||function(e){"function"==typeof o[e]?j[t].prototype[e]=function(){return this[q][e].apply(this[q],arguments)}:Object.defineProperty(j[t].prototype,e,{set:function(n){this[q][e]="function"==typeof n?Zone.current.wrap(n,t+"."+e):n},get:function(){return this[q][e]}})}(r);for(r in e)"prototype"!==r&&e.hasOwnProperty(r)&&(j[t][r]=e[r])}}function p(t,e){try{return Function("f","return function "+t+"(){return f(this, arguments)}")(e)}catch(t){return function(){return e(this,arguments)}}}function h(t,e,n){for(var r=t;r&&-1===Object.getOwnPropertyNames(r).indexOf(e);)r=Object.getPrototypeOf(r);!r&&t[e]&&(r=t);var o,i=x(e);return r&&!(o=r[i])&&(o=r[i]=r[e],r[e]=p(e,n(o,i,e))),o}function v(t,e){var n=t[x("eventTasks")],r=[];if(n)for(var o=0;o<n.length;o++){var i=n[o],a=i.data,u=a&&a.eventName;u===e&&r.push(i)}return r}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function d(t,e,n,r){function o(e){function n(){try{e.invoke.apply(this,arguments)}finally{delete c[r.handleId]}}var r=e.data;return r.args[0]=n,r.handleId=a.apply(t,r.args),c[r.handleId]=e,e}function i(t){return delete c[t.data.handleId],u(t.data.handleId)}var a=null,u=null;e+=r,n+=r;var c={};a=h(t,e,function(n){return function(a,u){if("function"==typeof u[0]){var c=Zone.current,s={handleId:null,isPeriodic:"Interval"===r,delay:"Timeout"===r||"Interval"===r?u[1]||0:null,args:u},f=c.scheduleMacroTask(e,u[0],s,o,i);if(!f)return f;var l=f.data.handleId;return l&&l.ref&&l.unref&&"function"==typeof l.ref&&"function"==typeof l.unref&&(f.ref=l.ref.bind(l),f.unref=l.unref.bind(l)),f}return n.apply(t,u)}}),u=h(t,n,function(e){return function(n,r){var o="number"==typeof r[0]?c[r[0]]:r[0];o&&"string"==typeof o.type?"notScheduled"!==o.state&&(o.cancelFn&&o.data.isPeriodic||0===o.runCount)&&o.zone.cancelTask(o):e.apply(t,r)}})}function y(){Object.defineProperty=function(t,e,n){if(k(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var r=n.configurable;return"prototype"!==e&&(n=w(t,e,n)),m(t,e,n,r)},Object.defineProperties=function(t,e){return Object.keys(e).forEach(function(n){Object.defineProperty(t,n,e[n])}),t},Object.create=function(t,e){return"object"!=typeof e||Object.isFrozen(e)||Object.keys(e).forEach(function(n){e[n]=w(t,n,e[n])}),H(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var n=U(t,e);return k(t,e)&&(n.configurable=!1),n}}function g(t,e,n){var r=n.configurable;return n=w(t,e,n),m(t,e,n,r)}function k(t,e){return t&&t[N]&&t[N][e]}function w(t,e,n){return n.configurable=!0,n.configurable||(t[N]||A(t,N,{writable:!0,value:{}}),t[N][e]=!0),n}function m(t,e,n,r){try{return A(t,e,n)}catch(i){if(!n.configurable)throw i;void 0===r?delete n.configurable:n.configurable=r;try{return A(t,e,n)}catch(r){var o=null;try{o=JSON.stringify(n)}catch(t){o=o.toString()}console.log("Attempting to configure '"+e+"' with descriptor '"+o+"' on object '"+t+"' and got error, giving up: "+r)}}}function b(t){var e=[];t.wtf?e=K.split(",").map(function(t){return"HTML"+t+"Element"}).concat(X):t[W]?e.push(W):e=X;for(var n=0;n<e.length;n++){var r=t[e[n]];f(r&&r.prototype)}}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function _(t){var e=t.WebSocket;t.EventTarget||f(e.prototype),t.WebSocket=function(t,n){var r,o=arguments.length>1?new e(t,n):new e(t),a=Object.getOwnPropertyDescriptor(o,"onmessage");return a&&!1===a.configurable?(r=Object.create(o),["addEventListener","removeEventListener","send","close"].forEach(function(t){r[t]=function(){return o[t].apply(o,arguments)}})):r=o,i(r,["close","error","message","open"]),r};for(var n in e)t.WebSocket[n]=e[n]}function T(t){if(!C||Z){var e="undefined"!=typeof WebSocket;O()?(I&&(i(window,V),i(Document.prototype,V),"undefined"!=typeof SVGElement&&i(SVGElement.prototype,V),i(HTMLElement.prototype,V)),i(XMLHttpRequest.prototype,null),"undefined"!=typeof IDBIndex&&(i(IDBIndex.prototype,null),i(IDBRequest.prototype,null),i(IDBOpenDBRequest.prototype,null),i(IDBDatabase.prototype,null),i(IDBTransaction.prototype,null),i(IDBCursor.prototype,null)),e&&i(WebSocket.prototype,null)):(P(),l("XMLHttpRequest"),e&&_(t))}}function O(){if((I||Z)&&!Object.getOwnPropertyDescriptor(HTMLElement.prototype,"onclick")&&"undefined"!=typeof Element){var t=Object.getOwnPropertyDescriptor(Element.prototype,"onclick");if(t&&!t.configurable)return!1}var e=Object.getOwnPropertyDescriptor(XMLHttpRequest.prototype,"onreadystatechange");Object.defineProperty(XMLHttpRequest.prototype,"onreadystatechange",{enumerable:!0,configurable:!0,get:function(){return!0}});var n=new XMLHttpRequest,r=!!n.onreadystatechange;return Object.defineProperty(XMLHttpRequest.prototype,"onreadystatechange",e||{}),r}function P(){for(var t=function(t){var e=V[t],n="on"+e;self.addEventListener(e,function(t){var e,r,o=t.target;for(r=o?o.constructor.name+"."+n:"unknown."+n;o;)o[n]&&!o[n][B]&&(e=Zone.current.wrap(o[n],r),e[B]=o[n],o[n]=e),o=o.parentElement},!0)},e=0;e<V.length;e++)t(e)}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function S(t){if((I||Z)&&"registerElement"in t.document){var e=document.registerElement,n=["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"];document.registerElement=function(t,r){return r&&r.prototype&&n.forEach(function(t){var e="Document.registerElement::"+t;if(r.prototype.hasOwnProperty(t)){var n=Object.getOwnPropertyDescriptor(r.prototype,t);n&&n.value?(n.value=Zone.current.wrap(n.value,e),g(r.prototype,t,n)):r.prototype[t]=Zone.current.wrap(r.prototype[t],e)}else r.prototype[t]&&(r.prototype[t]=Zone.current.wrap(r.prototype[t],e))}),e.apply(document,[t,r])}}}function D(t){function e(t){return t[nt]}function n(t){XMLHttpRequest[it]=!1;var e=t.data,n=e.target[ot];n&&e.target.removeEventListener("readystatechange",n);var r=e.target[ot]=function(){e.target.readyState===e.target.DONE&&!e.aborted&&XMLHttpRequest[it]&&"scheduled"===t.state&&t.invoke()};return e.target.addEventListener("readystatechange",r),e.target[nt]||(e.target[nt]=t),a.apply(e.target,e.args),XMLHttpRequest[it]=!0,t}function r(){}function o(t){var e=t.data;return e.aborted=!0,u.apply(e.target,e.args)}var i=h(t.XMLHttpRequest.prototype,"open",function(){return function(t,e){return t[rt]=0==e[2],i.apply(t,e)}}),a=h(t.XMLHttpRequest.prototype,"send",function(){return function(t,e){var i=Zone.current;if(t[rt])return a.apply(t,e);var u={target:t,isPeriodic:!1,delay:null,args:e,aborted:!1};return i.scheduleMacroTask("XMLHttpRequest.send",r,u,n,o)}}),u=h(t.XMLHttpRequest.prototype,"abort",function(t){return function(t,n){var r=e(t);if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}}})}function E(t){return function(e){v(J,t).forEach(function(n){var r=J.PromiseRejectionEvent;if(r){var o=new r(t,{promise:e.promise,reason:e.rejection});n.invoke(o)}})}}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var x=(function(t){function e(t){return"__zone_symbol__"+t}function n(){0===A&&0===M.length&&(t[I]?t[I].resolve(0)[Z](a):t[C](a,0))}function r(t){n(),M.push(t)}function o(t){if(!D[e("ignoreConsoleErrorUncaughtError")]){var n=t&&t.rejection;n&&console.error("Unhandled Promise rejection:",n instanceof Error?n.message:n,"; Zone:",t.zone.name,"; Task:",t.task&&t.task.source,"; Value:",n,n instanceof Error?n.stack:void 0),console.error(t)}}function i(t){o(t);try{var n=D[e("unhandledPromiseRejectionHandler")];n&&"function"==typeof n&&n.apply(this,[t])}catch(t){}}function a(){if(!L){for(L=!0;M.length;){var t=M;M=[];for(var e=0;e<t.length;e++){var n=t[e];try{n.zone.runTask(n,null,null)}catch(t){o(t)}}}for(;q.length;)for(var r=function(){var t=q.shift();try{t.zone.runGuarded(function(){throw t})}catch(t){i(t)}};q.length;)r();L=!1}}function u(t){return t&&t.then}function c(t){return t}function s(t){return G.reject(t)}function f(t,e){return function(n){try{l(t,e,n)}catch(e){l(t,!1,e)}}}function l(t,r,o){var i=B();if(t===o)throw new TypeError("Promise resolved with itself");if(t[U]===K){var a=null;try{"object"!=typeof o&&"function"!=typeof o||(a=o&&o.then)}catch(e){return i(function(){l(t,!1,e)})(),t}if(r!==W&&o instanceof G&&o.hasOwnProperty(U)&&o.hasOwnProperty(H)&&o[U]!==K)p(o),l(t,o[U],o[H]);else if(r!==W&&"function"==typeof a)try{a.apply(o,[i(f(t,r)),i(f(t,!1))])}catch(e){i(function(){l(t,!1,e)})()}else{t[U]=r;var u=t[H];t[H]=o,r===W&&o instanceof Error&&(o[e("currentTask")]=D.currentTask);for(var c=0;c<u.length;)h(t,u[c++],u[c++],u[c++],u[c++]);if(0==u.length&&r==W){t[U]=V;try{throw new Error("Uncaught (in promise): "+o+(o&&o.stack?"\n"+o.stack:""))}catch(e){var s=e;s.rejection=o,s.promise=t,s.zone=D.current,s.task=D.currentTask,q.push(s),n()}}}}return t}function p(t){if(t[U]===V){try{var n=D[e("rejectionHandledHandler")];n&&"function"==typeof n&&n.apply(this,[{rejection:t[H],promise:t}])}catch(t){}t[U]=W;for(var r=0;r<q.length;r++)t===q[r].promise&&q.splice(r,1)}}function h(t,e,n,r,o){p(t);var i=t[U]?"function"==typeof r?r:c:"function"==typeof o?o:s;e.scheduleMicroTask(N,function(){try{l(n,!0,e.run(i,void 0,[t[H]]))}catch(t){l(n,!1,t)}})}function v(t){var e=t.prototype,n=e.then;e[Z]=n,t.prototype.then=function(t,e){var r=this;return new G(function(t,e){n.call(r,t,e)}).then(t,e)},t[Q]=!0}function d(t){return function(){var e=t.apply(this,arguments);if(e instanceof G)return e;var n=e.constructor;return n[Q]||v(n),e}}function y(){var t=this,e=nt.apply(this,arguments);if(!e.stack)try{throw e}catch(t){e=t}var n=e.originalStack=e.stack;if(y[ot]&&n){for(var r=n.split("\n"),o=R,i=0;r[i]!==$&&r[i]!==tt&&i<r.length;)i++;for(;i<r.length&&o;i++){var a=r[i];if(a.trim())switch(rt[a]){case 0:r.splice(i,1),i--;break;case 1:o.parent?(r[i]+=" ["+o.parent.zone.name+" => "+o.zone.name+"]",o=o.parent):o=null;break;default:r[i]+=" ["+o.zone.name+"]"}}try{e.stack=e.zoneAwareStack=r.join("\n")}catch(t){}}return this instanceof nt&&this.constructor!=nt?(Object.keys(e).concat("stack","message").forEach(function(n){if(void 0!==e[n])try{t[n]=e[n]}catch(t){}}),this):e}if(t.Zone)throw new Error("Zone already loaded.");var g={name:"NO ZONE"},k="notScheduled",w="scheduling",m="scheduled",b="running",_="canceling",T="unknown",O="microTask",P="macroTask",S="eventTask",D=function(){function e(t,e){this._properties=null,this._parent=t,this._name=e?e.name||"unnamed":"<root>",this._properties=e&&e.properties||{},this._zoneDelegate=new x(this,this._parent&&this._parent._zoneDelegate,e)}return e.assertZonePatched=function(){if(t.Promise!==G)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")},Object.defineProperty(e,"root",{get:function(){for(var t=e.current;t.parent;)t=t.parent;return t},enumerable:!0,configurable:!0}),Object.defineProperty(e,"current",{get:function(){return R.zone},enumerable:!0,configurable:!0}),Object.defineProperty(e,"currentTask",{get:function(){return F},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parent",{get:function(){return this._parent},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"name",{get:function(){return this._name},enumerable:!0,configurable:!0}),e.prototype.get=function(t){var e=this.getZoneWith(t);if(e)return e._properties[t]},e.prototype.getZoneWith=function(t){for(var e=this;e;){if(e._properties.hasOwnProperty(t))return e;e=e._parent}return null},e.prototype.fork=function(t){if(!t)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,t)},e.prototype.wrap=function(t,e){if("function"!=typeof t)throw new Error("Expecting function got: "+t);var n=this._zoneDelegate.intercept(this,t,e),r=this;return function(){return r.runGuarded(n,this,arguments,e)}},e.prototype.run=function(t,e,n,r){void 0===e&&(e=void 0),void 0===n&&(n=null),void 0===r&&(r=null),R=new z(R,this);try{return this._zoneDelegate.invoke(this,t,e,n,r)}finally{R=R.parent}},e.prototype.runGuarded=function(t,e,n,r){void 0===e&&(e=null),void 0===n&&(n=null),void 0===r&&(r=null),R=new z(R,this);try{try{return this._zoneDelegate.invoke(this,t,e,n,r)}catch(t){if(this._zoneDelegate.handleError(this,t))throw t}}finally{R=R.parent}},e.prototype.runTask=function(t,e,n){if(t.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(t.zone||g).name+"; Execution: "+this.name+")");var r=t.state!=b;r&&t._transitionTo(b,m),t.runCount++;var o=F;F=t,R=new z(R,this);try{t.type==P&&t.data&&!t.data.isPeriodic&&(t.cancelFn=null);try{return this._zoneDelegate.invokeTask(this,t,e,n)}catch(t){if(this._zoneDelegate.handleError(this,t))throw t}}finally{t.state!==k&&t.state!==T&&(t.type==S||t.data&&t.data.isPeriodic?r&&t._transitionTo(m,b):(t.runCount=0,this._updateTaskCount(t,-1),r&&t._transitionTo(k,b,k))),R=R.parent,F=o}},e.prototype.scheduleTask=function(t){if(t.zone&&t.zone!==this)for(var e=this;e;){if(e===t.zone)throw Error("can not reschedule task to "+this.name+" which is descendants of the original zone "+t.zone.name);e=e.parent}t._transitionTo(w,k);var n=[];t._zoneDelegates=n,t._zone=this;try{t=this._zoneDelegate.scheduleTask(this,t)}catch(e){throw t._transitionTo(T,w,k),this._zoneDelegate.handleError(this,e),e}return t._zoneDelegates===n&&this._updateTaskCount(t,1),t.state==w&&t._transitionTo(m,w),t},e.prototype.scheduleMicroTask=function(t,e,n,r){return this.scheduleTask(new j(O,t,e,n,r,null))},e.prototype.scheduleMacroTask=function(t,e,n,r,o){return this.scheduleTask(new j(P,t,e,n,r,o))},e.prototype.scheduleEventTask=function(t,e,n,r,o){return this.scheduleTask(new j(S,t,e,n,r,o))},e.prototype.cancelTask=function(t){if(t.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(t.zone||g).name+"; Execution: "+this.name+")");t._transitionTo(_,m,b);try{this._zoneDelegate.cancelTask(this,t)}catch(e){throw t._transitionTo(T,_),this._zoneDelegate.handleError(this,e),e}return this._updateTaskCount(t,-1),t._transitionTo(k,_),t.runCount=0,t},e.prototype._updateTaskCount=function(t,e){var n=t._zoneDelegates;-1==e&&(t._zoneDelegates=null);for(var r=0;r<n.length;r++)n[r]._updateTaskCount(t.type,e)},e}();D.__symbol__=e;var E={name:"",onHasTask:function(t,e,n,r){return t.hasTask(n,r)},onScheduleTask:function(t,e,n,r){return t.scheduleTask(n,r)},onInvokeTask:function(t,e,n,r,o,i){return t.invokeTask(n,r,o,i)},onCancelTask:function(t,e,n,r){return t.cancelTask(n,r)}},x=function(){function t(t,e,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=t,this._parentDelegate=e,this._forkZS=n&&(n&&n.onFork?n:e._forkZS),this._forkDlgt=n&&(n.onFork?e:e._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:e.zone),this._interceptZS=n&&(n.onIntercept?n:e._interceptZS),this._interceptDlgt=n&&(n.onIntercept?e:e._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:e.zone),this._invokeZS=n&&(n.onInvoke?n:e._invokeZS),this._invokeDlgt=n&&(n.onInvoke?e:e._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:e.zone),this._handleErrorZS=n&&(n.onHandleError?n:e._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?e:e._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:e.zone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:e._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?e:e._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:e.zone),this._invokeTaskZS=n&&(n.onInvokeTask?n:e._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?e:e._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:e.zone),this._cancelTaskZS=n&&(n.onCancelTask?n:e._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?e:e._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:e.zone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;var r=n&&n.onHasTask,o=e&&e._hasTaskZS;(r||o)&&(this._hasTaskZS=r?n:E,this._hasTaskDlgt=e,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=t,n.onScheduleTask||(this._scheduleTaskZS=E,this._scheduleTaskDlgt=e,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=E,this._invokeTaskDlgt=e,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=E,this._cancelTaskDlgt=e,this._cancelTaskCurrZone=this.zone))}return t.prototype.fork=function(t,e){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,t,e):new D(t,e)},t.prototype.intercept=function(t,e,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,t,e,n):e},t.prototype.invoke=function(t,e,n,r,o){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,t,e,n,r,o):e.apply(n,r)},t.prototype.handleError=function(t,e){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,t,e)},t.prototype.scheduleTask=function(t,e){var n=e;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),(n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,t,e))||(n=e);else if(e.scheduleFn)e.scheduleFn(e);else{if(e.type!=O)throw new Error("Task is missing scheduleFn.");r(e)}return n},t.prototype.invokeTask=function(t,e,n,r){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,t,e,n,r):e.callback.apply(n,r)},t.prototype.cancelTask=function(t,e){var n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,t,e);else{if(!e.cancelFn)throw Error("Task is not cancelable");n=e.cancelFn(e)}return n},t.prototype.hasTask=function(t,e){try{return this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,t,e)}catch(t){}},t.prototype._updateTaskCount=function(t,e){var n=this._taskCounts,r=n[t],o=n[t]=r+e;if(o<0)throw new Error("More tasks executed then were scheduled.");if(0==r||0==o){var i={microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:t};this.hasTask(this.zone,i)}},t}(),j=function(){function t(t,e,n,r,o,i){this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=e,this.data=r,this.scheduleFn=o,this.cancelFn=i,this.callback=n;var u=this;this.invoke=function(){A++;try{return u.runCount++,u.zone.runTask(u,this,arguments)}finally{1==A&&a(),A--}}}return Object.defineProperty(t.prototype,"zone",{get:function(){return this._zone},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"state",{get:function(){return this._state},enumerable:!0,configurable:!0}),t.prototype.cancelScheduleRequest=function(){this._transitionTo(k,w)},t.prototype._transitionTo=function(t,e,n){if(this._state!==e&&this._state!==n)throw new Error(this.type+" '"+this.source+"': can not transition to '"+t+"', expecting state '"+e+"'"+(n?" or '"+n+"'":"")+", was '"+this._state+"'.");this._state=t,t==k&&(this._zoneDelegates=null)},t.prototype.toString=function(){return this.data&&void 0!==this.data.handleId?this.data.handleId:Object.prototype.toString.call(this)},t.prototype.toJSON=function(){return{type:this.type,state:this.state,source:this.source,data:this.data,zone:this.zone.name,invoke:this.invoke,scheduleFn:this.scheduleFn,cancelFn:this.cancelFn,runCount:this.runCount,callback:this.callback}},t}(),z=function(){function t(t,e){this.parent=t,this.zone=e}return t}(),C=e("setTimeout"),I=e("Promise"),Z=e("then"),R=new z(null,new D(null,null)),F=null,M=[],L=!1,q=[],A=0,U=e("state"),H=e("value"),N="Promise.then",K=null,X=!0,W=!1,V=0,B=function(){var t=!1;return function(e){return function(){t||(t=!0,e.apply(null,arguments))}}},G=function(){function t(e){var n=this;if(!(n instanceof t))throw new Error("Must be an instanceof Promise.");n[U]=K,n[H]=[];try{e&&e(f(n,X),f(n,W))}catch(t){l(n,!1,t)}}return t.toString=function(){return"function ZoneAwarePromise() { [native code] }"},t.resolve=function(t){return l(new this(null),X,t)},t.reject=function(t){return l(new this(null),W,t)},t.race=function(t){function e(t){i&&(i=r(t))}function n(t){i&&(i=o(t))}for(var r,o,i=new this(function(t,e){n=[t,e],r=n[0],o=n[1];var n}),a=0,c=t;a<c.length;a++){var s=c[a];u(s)||(s=this.resolve(s)),s.then(e,n)}return i},t.all=function(t){for(var e,n,r=new this(function(t,r){e=t,n=r}),o=0,i=[],a=0,c=t;a<c.length;a++){var s=c[a];u(s)||(s=this.resolve(s)),s.then(function(t){return function(n){i[t]=n,--o||e(i)}}(o),n),o++}return o||e(i),r},t.prototype.then=function(t,e){var n=new this.constructor(null),r=D.current;return this[U]==K?this[H].push(r,n,t,e):h(this,r,n,t,e),n},t.prototype.catch=function(t){return this.then(null,t)},t}();G.resolve=G.resolve,G.reject=G.reject,G.race=G.race,G.all=G.all;var Y=t[I]=t.Promise;t.Promise=G;var Q=e("thenPatched");if(Y){v(Y);var J=t.fetch;"function"==typeof J&&(t.fetch=d(J))}Promise[D.__symbol__("uncaughtPromiseErrors")]=q;var $,tt,et=D.__symbol__("blacklistedStackFrames"),nt=t[e("Error")]=t.Error,rt={};t.Error=y;var ot="stackRewrite";y.prototype=nt.prototype,y[et]=rt,y[ot]=!1;var it=["stackTraceLimit","captureStackTrace","prepareStackTrace"],at=Object.keys(nt);at&&at.forEach(function(t){0===it.filter(function(e){return e===t}).length&&Object.defineProperty(y,t,{get:function(){return nt[t]},set:function(e){nt[t]=e}})}),nt.hasOwnProperty("stackTraceLimit")&&(nt.stackTraceLimit=Math.max(nt.stackTraceLimit,15),Object.defineProperty(y,"stackTraceLimit",{get:function(){return nt.stackTraceLimit},set:function(t){return nt.stackTraceLimit=t}})),nt.hasOwnProperty("captureStackTrace")&&Object.defineProperty(y,"captureStackTrace",{value:function(t,e){nt.captureStackTrace(t,e)}}),Object.defineProperty(y,"prepareStackTrace",{get:function(){return nt.prepareStackTrace},set:function(t){return nt.prepareStackTrace=t&&"function"==typeof t?function(e,n){if(n)for(var r=0;r<n.length;r++){var o=n[r];if("zoneCaptureStackTrace"===o.getFunctionName()){n.splice(r,1);break}}return t.apply(this,[e,n])}:t}});var ut=D.current.fork({name:"detect",onInvoke:function(t,e,n,r,o,i,a){return t.invoke(n,r,o,i,a)},onHandleError:function(t,e,n,r){if(r.originalStack&&Error===y)for(var o=r.originalStack.split(/\n/),i=!1,a=!1,u=!1;o.length;){var c=o.shift();if(/:\d+:\d+/.test(c)){var s=c.split("(")[0].split("@")[0],f=1;if(-1!==s.indexOf("ZoneAwareError")&&($=c,tt=c.replace("Error.",""),rt[tt]=0),-1!==s.indexOf("runGuarded")?a=!0:-1!==s.indexOf("runTask")?u=!0:-1!==s.indexOf("run")?i=!0:f=0,rt[c]=f,i&&a&&u){y[ot]=!0;break}}}return!1}}),ct=function(){ut.run(function(){ut.runGuarded(function(){throw new y(y,nt)})})};ut.runTask(ut.scheduleMacroTask("detect",ct,null,function(){return null},null)),t.Zone=D}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||t),function(t){return"__zone_symbol__"+t}),j="object"==typeof window&&window||"object"==typeof self&&self||t,z="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,C=!("nw"in j)&&void 0!==e&&"[object process]"==={}.toString.call(e),I=!C&&!z&&!("undefined"==typeof window||!window.HTMLElement),Z=void 0!==e&&"[object process]"==={}.toString.call(e)&&!z&&!("undefined"==typeof window||!window.HTMLElement),R=x("eventTasks"),F="addEventListener",M="removeEventListener",L=function(t,e){return{useCapturing:e[2],eventName:e[0],handler:e[1],target:t||j,name:e[0],invokeAddFunc:function(t,e){return e&&e.invoke?this.target[t](this.eventName,e.invoke,this.useCapturing):this.target[t](this.eventName,e,this.useCapturing)},invokeRemoveFunc:function(t,e){return e&&e.invoke?this.target[t](this.eventName,e.invoke,this.useCapturing):this.target[t](this.eventName,e,this.useCapturing)}}},q=(c(F,M),s(M),x("originalInstance"));Zone[x("patchEventTargetMethods")]=f,Zone[x("patchOnProperties")]=i;/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var A=Object[x("defineProperty")]=Object.defineProperty,U=Object[x("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,H=Object.create,N=x("unconfigurables"),K="Anchor,Area,Audio,BR,Base,BaseFont,Body,Button,Canvas,Content,DList,Directory,Div,Embed,FieldSet,Font,Form,Frame,FrameSet,HR,Head,Heading,Html,IFrame,Image,Input,Keygen,LI,Label,Legend,Link,Map,Marquee,Media,Menu,Meta,Meter,Mod,OList,Object,OptGroup,Option,Output,Paragraph,Pre,Progress,Quote,Script,Select,Source,Span,Style,TableCaption,TableCell,TableCol,Table,TableRow,TableSection,TextArea,Title,Track,UList,Unknown,Video",X="ApplicationCache,EventSource,FileReader,InputMethodContext,MediaController,MessagePort,Node,Performance,SVGElementInstance,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebKitNamedFlow,Window,Worker,WorkerGlobalScope,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload,IDBRequest,IDBOpenDBRequest,IDBDatabase,IDBTransaction,IDBCursor,DBIndex,WebSocket".split(","),W="EventTarget",V="copy cut paste abort blur focus canplay canplaythrough change click contextmenu dblclick drag dragend dragenter dragleave dragover dragstart drop durationchange emptied ended input invalid keydown keypress keyup load loadeddata loadedmetadata loadstart message mousedown mouseenter mouseleave mousemove mouseout mouseover mouseup pause play playing progress ratechange reset scroll seeked seeking select show stalled submit suspend timeupdate volumechange waiting mozfullscreenchange mozfullscreenerror mozpointerlockchange mozpointerlockerror error webglcontextrestored webglcontextlost webglcontextcreationerror".split(" "),B=x("unbound"),G="set",Y="clear",Q=["alert","prompt","confirm"],J="undefined"!=typeof window&&window||"undefined"!=typeof self&&self||t;d(J,G,Y,"Timeout"),d(J,G,Y,"Interval"),d(J,G,Y,"Immediate"),d(J,"request","cancel","AnimationFrame"),d(J,"mozRequest","mozCancel","AnimationFrame"),d(J,"webkitRequest","webkitCancel","AnimationFrame");for(var $=0;$<Q.length;$++){var tt=Q[$];h(J,tt,function(t,e,n){return function(e,r){return Zone.current.run(t,J,r,n)}})}b(J);var et=J.XMLHttpRequestEventTarget;et&&et.prototype&&f(et.prototype),T(J),l("MutationObserver"),l("WebKitMutationObserver"),l("FileReader"),y(),S(J),D(J);var nt=x("xhrTask"),rt=x("xhrSync"),ot=x("xhrListener"),it=x("xhrScheduled");J.navigator&&J.navigator.geolocation&&r(J.navigator.geolocation,["getCurrentPosition","watchPosition"]),J.PromiseRejectionEvent&&(Zone[x("unhandledPromiseRejectionHandler")]=E("unhandledrejection"),Zone[x("rejectionHandledHandler")]=E("rejectionhandled"))})}).call(e,n("DuR2"),n("W2nU"))},ZtwE:function(t,e,n){"use strict";var r=n("XSOZ"),o=n("UKM+"),i=n("PHCx"),a=[].slice,u={},c=function(t,e,n){if(!(e in u)){for(var r=[],o=0;o<e;o++)r[o]="a["+o+"]";u[e]=Function("F,a","return new F("+r.join(",")+")")}return u[e](t,n)};t.exports=Function.bind||function(t){var e=r(this),n=a.call(arguments,1),u=function(){var r=n.concat(a.call(arguments));return this instanceof u?c(e,r.length,r):i(e,r,t)};return o(e.prototype)&&(u.prototype=e.prototype),u}},bN1p:function(t,e){t.exports={}},bUY0:function(t,e,n){function r(t,e,n){var c,p,h=arguments.length<4?t:arguments[3],v=i.f(f(t),e);if(!v){if(l(p=a(t)))return r(p,e,n,h);v=s(0)}return u(v,"value")?!(!1===v.writable||!l(h))&&(c=i.f(h,e)||s(0),c.value=n,o.f(h,e,c),!0):void 0!==v.set&&(v.set.call(h,n),!0)}var o=n("lDLk"),i=n("x9zv"),a=n("KOrd"),u=n("WBcL"),c=n("Ds5P"),s=n("fU25"),f=n("DIVP"),l=n("UKM+");c(c.S,"Reflect",{set:r})},bUqO:function(t,e,n){t.exports=!n("zgIt")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},boo2:function(t,e,n){var r=n("UKM+"),o=n("XO1R"),i=n("kkCw")("species");t.exports=function(t){var e;return o(t)&&(e=t.constructor,"function"!=typeof e||e!==Array&&!o(e.prototype)||(e=void 0),r(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},d075:function(t,e,n){t.exports=n("OzIq").document&&document.documentElement},dSUw:function(t,e,n){"use strict";var r=n("Dgii");t.exports=n("0Rih")("Set",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return r.def(this,t=0===t?0:t,t)}},r)},"dm+7":function(t,e,n){var r=n("Ds5P");r(r.S,"Reflect",{has:function(t,e){return e in t}})},fJSx:function(t,e,n){"use strict";var r=n("A16L"),o=n("1aA0").getWeak,i=n("DIVP"),a=n("UKM+"),u=n("9GpA"),c=n("vmSO"),s=n("LhTa"),f=n("WBcL"),l=s(5),p=s(6),h=0,v=function(t){return t._l||(t._l=new d)},d=function(){this.a=[]},y=function(t,e){return l(t.a,function(t){return t[0]===e})};d.prototype={get:function(t){var e=y(this,t);if(e)return e[1]},has:function(t){return!!y(this,t)},set:function(t,e){var n=y(this,t);n?n[1]=e:this.a.push([t,e])},delete:function(t){var e=p(this.a,function(e){return e[0]===t});return~e&&this.a.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,n,i){var s=t(function(t,r){u(t,s,e,"_i"),t._i=h++,t._l=void 0,void 0!=r&&c(r,n,t[i],t)});return r(s.prototype,{delete:function(t){if(!a(t))return!1;var e=o(t);return!0===e?v(this).delete(t):e&&f(e,this._i)&&delete e[this._i]},has:function(t){if(!a(t))return!1;var e=o(t);return!0===e?v(this).has(t):e&&f(e,this._i)}}),s},def:function(t,e,n){var r=o(i(e),!0);return!0===r?v(t).set(e,n):r[t._i]=n,t},ufstore:v}},fU25:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},gvDt:function(t,e,n){var r=n("UKM+"),o=n("DIVP"),i=function(t,e){if(o(t),!r(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,r){try{r=n("rFzY")(Function.call,n("x9zv").f(Object.prototype,"__proto__").set,2),r(t,[]),e=!(t instanceof Array)}catch(t){e=!0}return function(t,n){return i(t,n),e?t.__proto__=n:r(t,n),t}}({},!1):void 0),check:i}},jhxf:function(t,e,n){var r=n("UKM+"),o=n("OzIq").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},kic5:function(t,e,n){var r=n("UKM+"),o=n("gvDt").set;t.exports=function(t,e,n){var i,a=e.constructor;return a!==n&&"function"==typeof a&&(i=a.prototype)!==n.prototype&&r(i)&&o&&o(t,i),t}},kkCw:function(t,e,n){var r=n("VWgF")("wks"),o=n("ulTY"),i=n("OzIq").Symbol,a="function"==typeof i;(t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))}).store=r},lDLk:function(t,e,n){var r=n("DIVP"),o=n("xZa+"),i=n("s4j0"),a=Object.defineProperty;e.f=n("bUqO")?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},mTp7:function(t,e,n){var r=n("Ds5P"),o=n("gvDt");o&&r(r.S,"Reflect",{setPrototypeOf:function(t,e){o.check(t,e);try{return o.set(t,e),!0}catch(t){return!1}}})},mZON:function(t,e,n){var r=n("VWgF")("keys"),o=n("ulTY");t.exports=function(t){return r[t]||(r[t]=o(t))}},oYd7:function(t,e,n){"use strict";var r=n("Qh14"),o=n("Y1N3"),i=n("Y1aA"),a=n("FryR"),u=n("Q6Nf"),c=Object.assign;t.exports=!c||n("zgIt")(function(){var t={},e={},n=Symbol(),r="abcdefghijklmnopqrst";return t[n]=7,r.split("").forEach(function(t){e[t]=t}),7!=c({},t)[n]||Object.keys(c({},e)).join("")!=r})?function(t,e){for(var n=a(t),c=arguments.length,s=1,f=o.f,l=i.f;c>s;)for(var p,h=u(arguments[s++]),v=f?r(h).concat(f(h)):r(h),d=v.length,y=0;d>y;)l.call(h,p=v[y++])&&(n[p]=h[p]);return n}:c},oeih:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},ot5s:function(t,e,n){var r=n("PHqh"),o=n("BbyF"),i=n("8D8H");t.exports=function(t){return function(e,n,a){var u,c=r(e),s=o(c.length),f=i(a,s);if(t&&n!=n){for(;s>f;)if((u=c[f++])!=u)return!0}else for(;s>f;f++)if((t||f in c)&&c[f]===n)return t||f||0;return!t&&-1}}},plSV:function(t,e,n){var r=n("boo2");t.exports=function(t,e){return new(r(t))(e)}},qkyc:function(t,e,n){var r=n("kkCw")("iterator"),o=!1;try{var i=[7][r]();i.return=function(){o=!0},Array.from(i,function(){throw 2})}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i=[7],a=i[r]();a.next=function(){return{done:n=!0}},i[r]=function(){return a},t(i)}catch(t){}return n}},rFzY:function(t,e,n){var r=n("XSOZ");t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},s4j0:function(t,e,n){var r=n("UKM+");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},twxM:function(t,e,n){var r=n("lDLk"),o=n("DIVP"),i=n("Qh14");t.exports=n("bUqO")?Object.defineProperties:function(t,e){o(t);for(var n,a=i(e),u=a.length,c=0;u>c;)r.f(t,n=a[c++],e[n]);return t}},uc2A:function(t,e,n){"use strict";var r=n("V3l/"),o=n("Ds5P"),i=n("R3AP"),a=n("2p1q"),u=n("WBcL"),c=n("bN1p"),s=n("IRJ3"),f=n("yYvK"),l=n("KOrd"),p=n("kkCw")("iterator"),h=!([].keys&&"next"in[].keys()),v="keys",d="values",y=function(){return this};t.exports=function(t,e,n,g,k,w,m){s(n,e,g);var b,_,T,O=function(t){if(!h&&t in E)return E[t];switch(t){case v:case d:return function(){return new n(this,t)}}return function(){return new n(this,t)}},P=e+" Iterator",S=k==d,D=!1,E=t.prototype,x=E[p]||E["@@iterator"]||k&&E[k],j=x||O(k),z=k?S?O("entries"):j:void 0,C="Array"==e?E.entries||x:x;if(C&&(T=l(C.call(new t)))!==Object.prototype&&(f(T,P,!0),r||u(T,p)||a(T,p,y)),S&&x&&x.name!==d&&(D=!0,j=function(){return x.call(this)}),r&&!m||!h&&!D&&E[p]||a(E,p,j),c[e]=j,c[P]=y,k)if(b={values:S?j:O(d),keys:w?j:O(v),entries:z},m)for(_ in b)_ in E||i(E,_,b[_]);else o(o.P+o.F*(h||D),e,b);return b}},ulTY:function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},v3hU:function(t,e,n){var r=n("dSUw"),o=n("QG7u"),i=n("wCso"),a=n("DIVP"),u=n("KOrd"),c=i.keys,s=i.key,f=function(t,e){var n=c(t,e),i=u(t);if(null===i)return n;var a=f(i,e);return a.length?n.length?o(new r(n.concat(a))):a:n};i.exp({getMetadataKeys:function(t){return f(a(t),arguments.length<2?void 0:s(arguments[1]))}})},vmSO:function(t,e,n){var r=n("rFzY"),o=n("XvUs"),i=n("9vb1"),a=n("DIVP"),u=n("BbyF"),c=n("SHe9"),s={},f={},e=t.exports=function(t,e,n,l,p){var h,v,d,y,g=p?function(){return t}:c(t),k=r(n,l,e?2:1),w=0;if("function"!=typeof g)throw TypeError(t+" is not iterable!");if(i(g)){for(h=u(t.length);h>w;w++)if((y=e?k(a(v=t[w])[0],v[1]):k(t[w]))===s||y===f)return y}else for(d=g.call(t);!(v=d.next()).done;)if((y=o(d,k,v.value,e))===s||y===f)return y};e.BREAK=s,e.RETURN=f},vmSu:function(t,e,n){var r=n("Ds5P"),o=n("7ylX"),i=n("XSOZ"),a=n("DIVP"),u=n("UKM+"),c=n("zgIt"),s=n("ZtwE"),f=(n("OzIq").Reflect||{}).construct,l=c(function(){function t(){}return!(f(function(){},[],t)instanceof t)}),p=!c(function(){f(function(){})});r(r.S+r.F*(l||p),"Reflect",{construct:function(t,e){i(t),a(e);var n=arguments.length<3?t:i(arguments[2]);if(p&&!l)return f(t,e,n);if(t==n){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var r=[null];return r.push.apply(r,e),new(s.apply(t,r))}var c=n.prototype,h=o(u(c)?c:Object.prototype),v=Function.apply.call(t,h,e);return u(v)?v:h}})},vsh6:function(t,e,n){var r=n("wCso"),o=n("DIVP"),i=r.keys,a=r.key;r.exp({getOwnMetadataKeys:function(t){return i(o(t),arguments.length<2?void 0:a(arguments[1]))}})},wC1N:function(t,e,n){var r=n("ydD5"),o=n("kkCw")("toStringTag"),i="Arguments"==r(function(){return arguments}()),a=function(t,e){try{return t[e]}catch(t){}};t.exports=function(t){var e,n,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=a(e=Object(t),o))?n:i?r(e):"Object"==(u=r(e))&&"function"==typeof e.callee?"Arguments":u}},wCso:function(t,e,n){var r=n("MsuQ"),o=n("Ds5P"),i=n("VWgF")("metadata"),a=i.store||(i.store=new(n("ZDXm"))),u=function(t,e,n){var o=a.get(t);if(!o){if(!n)return;a.set(t,o=new r)}var i=o.get(e);if(!i){if(!n)return;o.set(e,i=new r)}return i},c=function(t,e,n){var r=u(e,n,!1);return void 0!==r&&r.has(t)},s=function(t,e,n){var r=u(e,n,!1);return void 0===r?void 0:r.get(t)},f=function(t,e,n,r){u(n,r,!0).set(t,e)},l=function(t,e){var n=u(t,e,!1),r=[];return n&&n.forEach(function(t,e){r.push(e)}),r},p=function(t){return void 0===t||"symbol"==typeof t?t:String(t)},h=function(t){o(o.S,"Reflect",t)};t.exports={store:a,map:u,has:c,get:s,set:f,keys:l,key:p,exp:h}},x9zv:function(t,e,n){var r=n("Y1aA"),o=n("fU25"),i=n("PHqh"),a=n("s4j0"),u=n("WBcL"),c=n("xZa+"),s=Object.getOwnPropertyDescriptor;e.f=n("bUqO")?s:function(t,e){if(t=i(t),e=a(e,!0),c)try{return s(t,e)}catch(t){}if(u(t,e))return o(!r.f.call(t,e),t[e])}},"xZa+":function(t,e,n){t.exports=!n("bUqO")&&!n("zgIt")(function(){return 7!=Object.defineProperty(n("jhxf")("div"),"a",{get:function(){return 7}}).a})},yJ2x:function(t,e,n){var r=n("wCso"),o=n("DIVP"),i=r.key,a=r.set;r.exp({defineMetadata:function(t,e,n,r){a(t,e,o(n),i(r))}})},yOtE:function(t,e,n){var r=n("wCso"),o=n("DIVP"),i=r.has,a=r.key;r.exp({hasOwnMetadata:function(t,e){return i(t,o(e),arguments.length<3?void 0:a(arguments[2]))}})},yYvK:function(t,e,n){var r=n("lDLk").f,o=n("WBcL"),i=n("kkCw")("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},ydD5:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},yx1U:function(t,e,n){var r=n("Ds5P"),o=n("x9zv").f,i=n("DIVP");r(r.S,"Reflect",{deleteProperty:function(t,e){var n=o(i(t),e);return!(n&&!n.configurable)&&delete t[e]}})},zZHq:function(t,e,n){var r=n("wCso"),o=n("DIVP"),i=r.get,a=r.key;r.exp({getOwnMetadata:function(t,e){return i(t,o(e),arguments.length<3?void 0:a(arguments[2]))}})},zgIt:function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}}},[1]);
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/vendor.b4be818cb6d8028f9192.bundle.js b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/dist/vendor.b4be818cb6d8028f9192.bundle.js
new file mode 100644 (file)
index 0000000..5b1dee9
--- /dev/null
@@ -0,0 +1,592 @@
+webpackJsonp([3,4],{"+3eL":function(t,e,n){"use strict";function r(){try{return i.apply(this,arguments)}catch(t){return s.errorObject.e=t,s.errorObject}}function o(t){return i=t,r}var i,s=n("WhVc");e.tryCatch=o},"+ayw":function(t,e,n){"use strict";function r(){return new s.Subject}function o(){return i.multicast.call(this,r).refCount()}var i=n("emOw"),s=n("EEr4");e.share=o},"1KT0":function(t,e,n){"use strict";var r=n("kkb0");e.merge=r.mergeStatic},"1r8+":function(t,e,n){"use strict";e.isArrayLike=function(t){return t&&"number"==typeof t.length}},"2Je8":function(t,e,n){"use strict";function r(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}function o(t){return t.replace(/\/index.html$/,"")}function i(t,e,n){var r="="+t;if(e.indexOf(r)>-1)return r;if(r=n.getPluralCategory(t),e.indexOf(r)>-1)return r;if(e.indexOf("other")>-1)return"other";throw new Error('No plural message found for value "'+t+'"')}function s(t,e){"string"==typeof e&&(e=parseInt(e,10));var n=e,r=n.toString().replace(/^[^.]*\.?/,""),o=Math.floor(Math.abs(n)),i=r.length,s=parseInt(r,10),a=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?H.One:H.Other;case"agq":case"bas":case"cu":case"dav":case"dje":case"dua":case"dyo":case"ebu":case"ewo":case"guz":case"kam":case"khq":case"ki":case"kln":case"kok":case"ksf":case"lrc":case"lu":case"luo":case"luy":case"mer":case"mfe":case"mgh":case"mua":case"mzn":case"nmg":case"nus":case"qu":case"rn":case"rw":case"sbp":case"twq":case"vai":case"yav":case"yue":case"zgh":case"ak":case"ln":case"mg":case"pa":case"ti":return n===Math.floor(n)&&n>=0&&n<=1?H.One:H.Other;case"am":case"as":case"bn":case"fa":case"gu":case"hi":case"kn":case"mr":case"zu":return 0===o||1===n?H.One:H.Other;case"ar":return 0===n?H.Zero:1===n?H.One:2===n?H.Two:n%100===Math.floor(n%100)&&n%100>=3&&n%100<=10?H.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=99?H.Many:H.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===o&&0===i?H.One:H.Other;case"be":return n%10==1&&n%100!=11?H.One:n%10===Math.floor(n%10)&&n%10>=2&&n%10<=4&&!(n%100>=12&&n%100<=14)?H.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?H.Many:H.Other;case"br":return n%10==1&&n%100!=11&&n%100!=71&&n%100!=91?H.One:n%10==2&&n%100!=12&&n%100!=72&&n%100!=92?H.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)?H.Few:0!==n&&n%1e6==0?H.Many:H.Other;case"bs":case"hr":case"sr":return 0===i&&o%10==1&&o%100!=11||s%10==1&&s%100!=11?H.One:0===i&&o%10===Math.floor(o%10)&&o%10>=2&&o%10<=4&&!(o%100>=12&&o%100<=14)||s%10===Math.floor(s%10)&&s%10>=2&&s%10<=4&&!(s%100>=12&&s%100<=14)?H.Few:H.Other;case"cs":case"sk":return 1===o&&0===i?H.One:o===Math.floor(o)&&o>=2&&o<=4&&0===i?H.Few:0!==i?H.Many:H.Other;case"cy":return 0===n?H.Zero:1===n?H.One:2===n?H.Two:3===n?H.Few:6===n?H.Many:H.Other;case"da":return 1===n||0!==a&&(0===o||1===o)?H.One:H.Other;case"dsb":case"hsb":return 0===i&&o%100==1||s%100==1?H.One:0===i&&o%100==2||s%100==2?H.Two:0===i&&o%100===Math.floor(o%100)&&o%100>=3&&o%100<=4||s%100===Math.floor(s%100)&&s%100>=3&&s%100<=4?H.Few:H.Other;case"ff":case"fr":case"hy":case"kab":return 0===o||1===o?H.One:H.Other;case"fil":return 0===i&&(1===o||2===o||3===o)||0===i&&o%10!=4&&o%10!=6&&o%10!=9||0!==i&&s%10!=4&&s%10!=6&&s%10!=9?H.One:H.Other;case"ga":return 1===n?H.One:2===n?H.Two:n===Math.floor(n)&&n>=3&&n<=6?H.Few:n===Math.floor(n)&&n>=7&&n<=10?H.Many:H.Other;case"gd":return 1===n||11===n?H.One:2===n||12===n?H.Two:n===Math.floor(n)&&(n>=3&&n<=10||n>=13&&n<=19)?H.Few:H.Other;case"gv":return 0===i&&o%10==1?H.One:0===i&&o%10==2?H.Two:0!==i||o%100!=0&&o%100!=20&&o%100!=40&&o%100!=60&&o%100!=80?0!==i?H.Many:H.Other:H.Few;case"he":return 1===o&&0===i?H.One:2===o&&0===i?H.Two:0!==i||n>=0&&n<=10||n%10!=0?H.Other:H.Many;case"is":return 0===a&&o%10==1&&o%100!=11||0!==a?H.One:H.Other;case"ksh":return 0===n?H.Zero:1===n?H.One:H.Other;case"kw":case"naq":case"se":case"smn":return 1===n?H.One:2===n?H.Two:H.Other;case"lag":return 0===n?H.Zero:0!==o&&1!==o||0===n?H.Other:H.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)?H.Few:0!==s?H.Many:H.Other:H.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?H.Zero:n%10==1&&n%100!=11||2===i&&s%10==1&&s%100!=11||2!==i&&s%10==1?H.One:H.Other;case"mk":return 0===i&&o%10==1||s%10==1?H.One:H.Other;case"mt":return 1===n?H.One:0===n||n%100===Math.floor(n%100)&&n%100>=2&&n%100<=10?H.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19?H.Many:H.Other;case"pl":return 1===o&&0===i?H.One:0===i&&o%10===Math.floor(o%10)&&o%10>=2&&o%10<=4&&!(o%100>=12&&o%100<=14)?H.Few:0===i&&1!==o&&o%10===Math.floor(o%10)&&o%10>=0&&o%10<=1||0===i&&o%10===Math.floor(o%10)&&o%10>=5&&o%10<=9||0===i&&o%100===Math.floor(o%100)&&o%100>=12&&o%100<=14?H.Many:H.Other;case"pt":return n===Math.floor(n)&&n>=0&&n<=2&&2!==n?H.One:H.Other;case"ro":return 1===o&&0===i?H.One:0!==i||0===n||1!==n&&n%100===Math.floor(n%100)&&n%100>=1&&n%100<=19?H.Few:H.Other;case"ru":case"uk":return 0===i&&o%10==1&&o%100!=11?H.One:0===i&&o%10===Math.floor(o%10)&&o%10>=2&&o%10<=4&&!(o%100>=12&&o%100<=14)?H.Few:0===i&&o%10==0||0===i&&o%10===Math.floor(o%10)&&o%10>=5&&o%10<=9||0===i&&o%100===Math.floor(o%100)&&o%100>=11&&o%100<=14?H.Many:H.Other;case"shi":return 0===o||1===n?H.One:n===Math.floor(n)&&n>=2&&n<=10?H.Few:H.Other;case"si":return 0===n||1===n||0===o&&1===s?H.One:H.Other;case"sl":return 0===i&&o%100==1?H.One:0===i&&o%100==2?H.Two:0===i&&o%100===Math.floor(o%100)&&o%100>=3&&o%100<=4||0!==i?H.Few:H.Other;case"tzm":return n===Math.floor(n)&&n>=0&&n<=1||n===Math.floor(n)&&n>=11&&n<=99?H.One:H.Other;default:return H.Other}}function a(t){return t.name||typeof t}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function u(t,e){return Error("InvalidPipeArgument: '"+e+"' for pipe '"+n.i(T.T)(t)+"'")}function c(t){return t?t[0].toUpperCase()+t.substr(1).toLowerCase():t}function l(t){return function(e,n){var r=t(e,n);return 1==r.length?"0"+r:r}}function p(t){return function(e,n){return t(e,n).split(" ")[1]}}function f(t){return function(e,n){return t(e,n).split(" ")[0]}}function h(t,e,n){return new Intl.DateTimeFormat(e,n).format(t).replace(/[\u200e\u200f]/g,"")}function d(t){var e={hour:"2-digit",hour12:!1,timeZoneName:t};return function(t,n){var r=h(t,n,e);return r?r.substring(3):""}}function y(t,e){return t.hour12=e,t}function m(t,e){var n={};return n[t]=2===e?"2-digit":"numeric",n}function g(t,e){var n={};return n[t]=e<4?e>1?"short":"narrow":"long",n}function v(t){return Object.assign.apply(Object,[{}].concat(t))}function _(t){return function(e,n){return h(e,n,t)}}function b(t,e,n){var r=ht[t];if(r)return r(e,n);var o=t,i=yt.get(o);if(!i){i=[];var s=void 0;for(ft.exec(t);t;)s=ft.exec(t),s?(i=i.concat(s.slice(1)),t=i.pop()):(i.push(t),t=null);yt.set(o,i)}return i.reduce(function(t,r){var o=dt[r];return t+(o?o(e,n):w(r))},"")}function w(t){return"''"===t?"'":t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}function C(t,e,n,r,o,i,s){if(void 0===i&&(i=null),void 0===s&&(s=!1),null==n)return null;if("number"!=typeof(n="string"==typeof n&&O(n)?+n:n))throw u(t,n);var a,c,l;if(r!==lt.Currency&&(a=1,c=0,l=3),o){var p=o.match(gt);if(null===p)throw new Error(o+" is not a valid digit info for number pipes");null!=p[1]&&(a=E(p[1])),null!=p[3]&&(c=E(p[3])),null!=p[5]&&(l=E(p[5]))}return pt.format(n,e,r,{minimumIntegerDigits:a,minimumFractionDigits:c,maximumFractionDigits:l,currency:i,currencyAsSymbol:s})}function E(t){var e=parseInt(t);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+t);return e}function O(t){return!isNaN(t-parseFloat(t))}function x(t){return null==t||""===t}function S(t){return t instanceof Date&&!isNaN(t.valueOf())}function P(t){var e=new Date(0),n=0,r=0,o=t[8]?e.setUTCFullYear:e.setFullYear,i=t[8]?e.setUTCHours:e.setHours;t[9]&&(n=A(t[9]+t[10]),r=A(t[9]+t[11])),o.call(e,A(t[1]),A(t[2])-1,A(t[3]));var s=A(t[4]||"0")-n,a=A(t[5]||"0")-r,u=A(t[6]||"0"),c=Math.round(1e3*parseFloat("0."+(t[7]||0)));return i.call(e,s,a,u,c),e}function A(t){return parseInt(t,10)}var T=n("3j3K");n.d(e,"a",function(){return F}),n.d(e,"c",function(){return I}),n.d(e,"b",function(){return Tt}),n.d(e,"f",function(){return G}),n.d(e,"g",function(){return q}),n.d(e,"e",function(){return kt}),n.d(e,"d",function(){return V});var k=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},V=function(){function t(){}return t.prototype.getBaseHrefFromDOM=function(){},t.prototype.onPopState=function(t){},t.prototype.onHashChange=function(t){},Object.defineProperty(t.prototype,"pathname",{get:function(){return null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"search",{get:function(){return null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hash",{get:function(){return null},enumerable:!0,configurable:!0}),t.prototype.replaceState=function(t,e,n){},t.prototype.pushState=function(t,e,n){},t.prototype.forward=function(){},t.prototype.back=function(){},t}(),M=(new T.D("Location Initialized"),function(){function t(){}return t.prototype.path=function(t){},t.prototype.prepareExternalUrl=function(t){},t.prototype.pushState=function(t,e,n,r){},t.prototype.replaceState=function(t,e,n,r){},t.prototype.forward=function(){},t.prototype.back=function(){},t.prototype.onPopState=function(t){},t.prototype.getBaseHref=function(){},t}()),N=new T.D("appBaseHref"),j=function(){function t(e){var n=this;this._subject=new T.R,this._platformStrategy=e;var r=this._platformStrategy.getBaseHref();this._baseHref=t.stripTrailingSlash(o(r)),this._platformStrategy.onPopState(function(t){n._subject.emit({url:n.path(!0),pop:!0,type:t.type})})}return t.prototype.path=function(t){return void 0===t&&(t=!1),this.normalize(this._platformStrategy.path(t))},t.prototype.isCurrentPathEqualTo=function(e,n){return void 0===n&&(n=""),this.path()==this.normalize(e+t.normalizeQueryParams(n))},t.prototype.normalize=function(e){return t.stripTrailingSlash(r(this._baseHref,o(e)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,e){void 0===e&&(e=""),this._platformStrategy.pushState(null,"",t,e)},t.prototype.replaceState=function(t,e){void 0===e&&(e=""),this._platformStrategy.replaceState(null,"",t,e)},t.prototype.forward=function(){this._platformStrategy.forward()},t.prototype.back=function(){this._platformStrategy.back()},t.prototype.subscribe=function(t,e,n){return void 0===e&&(e=null),void 0===n&&(n=null),this._subject.subscribe({next:t,error:e,complete:n})},t.normalizeQueryParams=function(t){return t&&"?"!==t[0]?"?"+t:t},t.joinWithSlash=function(t,e){if(0==t.length)return e;if(0==e.length)return t;var n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e},t.stripTrailingSlash=function(t){return t.replace(/\/$/,"")},t}();j.decorators=[{type:T.z}],j.ctorParameters=function(){return[{type:M}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var R=function(t){function e(e,n){var r=t.call(this)||this;return r._platformLocation=e,r._baseHref="",null!=n&&(r._baseHref=n),r}return k(e,t),e.prototype.onPopState=function(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)},e.prototype.getBaseHref=function(){return this._baseHref},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e},e.prototype.prepareExternalUrl=function(t){var e=j.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+j.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+j.normalizeQueryParams(r));0==o.length&&(o=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(M);R.decorators=[{type:T.z}],R.ctorParameters=function(){return[{type:V},{type:void 0,decorators:[{type:T.H},{type:T.E,args:[N]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var D=function(t){function e(e,n){var r=t.call(this)||this;if(r._platformLocation=e,null==n&&(n=r._platformLocation.getBaseHrefFromDOM()),null==n)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");return r._baseHref=n,r}return k(e,t),e.prototype.onPopState=function(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)},e.prototype.getBaseHref=function(){return this._baseHref},e.prototype.prepareExternalUrl=function(t){return j.joinWithSlash(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+j.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,r){var o=this.prepareExternalUrl(n+j.normalizeQueryParams(r));this._platformLocation.pushState(t,e,o)},e.prototype.replaceState=function(t,e,n,r){var o=this.prepareExternalUrl(n+j.normalizeQueryParams(r));this._platformLocation.replaceState(t,e,o)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(M);D.decorators=[{type:T.z}],D.ctorParameters=function(){return[{type:V},{type:void 0,decorators:[{type:T.H},{type:T.E,args:[N]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var I=function(){function t(){}return t.prototype.getPluralCategory=function(t){},t}(),F=function(t){function e(e){var n=t.call(this)||this;return n.locale=e,n}return k(e,t),e.prototype.getPluralCategory=function(t){switch(s(this.locale,t)){case H.Zero:return"zero";case H.One:return"one";case H.Two:return"two";case H.Few:return"few";case H.Many:return"many";default:return"other"}},e}(I);F.decorators=[{type:T.z}],F.ctorParameters=function(){return[{type:void 0,decorators:[{type:T.E,args:[T.c]}]}]};var H={};H.Zero=0,H.One=1,H.Two=2,H.Few=3,H.Many=4,H.Other=5,H[H.Zero]="Zero",H[H.One]="One",H[H.Two]="Two",H[H.Few]="Few",H[H.Many]="Many",H[H.Other]="Other";/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var L=function(){function t(t,e,n,r){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=r,this._initialClasses=[]}return Object.defineProperty(t.prototype,"klass",{set:function(t){this._applyInitialClasses(!0),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyInitialClasses(!1),this._applyClasses(this._rawClass,!1)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClass",{set:function(t){this._cleanupClasses(this._rawClass),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(n.i(T.S)(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())},enumerable:!0,configurable:!0}),t.prototype.ngDoCheck=function(){if(this._iterableDiffer){var t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){var e=this._keyValueDiffer.diff(this._rawClass);e&&this._applyKeyValueChanges(e)}},t.prototype._cleanupClasses=function(t){this._applyClasses(t,!0),this._applyInitialClasses(!1)},t.prototype._applyKeyValueChanges=function(t){var e=this;t.forEachAddedItem(function(t){return e._toggleClass(t.key,t.currentValue)}),t.forEachChangedItem(function(t){return e._toggleClass(t.key,t.currentValue)}),t.forEachRemovedItem(function(t){t.previousValue&&e._toggleClass(t.key,!1)})},t.prototype._applyIterableChanges=function(t){var e=this;t.forEachAddedItem(function(t){if("string"!=typeof t.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got "+n.i(T.T)(t.item));e._toggleClass(t.item,!0)}),t.forEachRemovedItem(function(t){return e._toggleClass(t.item,!1)})},t.prototype._applyInitialClasses=function(t){var e=this;this._initialClasses.forEach(function(n){return e._toggleClass(n,!t)})},t.prototype._applyClasses=function(t,e){var n=this;t&&(Array.isArray(t)||t instanceof Set?t.forEach(function(t){return n._toggleClass(t,!e)}):Object.keys(t).forEach(function(r){null!=t[r]&&n._toggleClass(r,!e)}))},t.prototype._toggleClass=function(t,e){var n=this;(t=t.trim())&&t.split(/\s+/g).forEach(function(t){n._renderer.setElementClass(n._ngEl.nativeElement,t,!!e)})},t}();L.decorators=[{type:T.U,args:[{selector:"[ngClass]"}]}],L.ctorParameters=function(){return[{type:T.t},{type:T.u},{type:T.V},{type:T.W}]},L.propDecorators={klass:[{type:T.X,args:["class"]}],ngClass:[{type:T.X}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var U=function(){function t(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}return t.prototype.ngOnChanges=function(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){var e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){var n=e.get(T.Y);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var r=this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(T.Z),o=r.resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(o,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},t}();U.decorators=[{type:T.U,args:[{selector:"[ngComponentOutlet]"}]}],U.ctorParameters=function(){return[{type:T._0}]},U.propDecorators={ngComponentOutlet:[{type:T.X}],ngComponentOutletInjector:[{type:T.X}],ngComponentOutletContent:[{type:T.X}],ngComponentOutletNgModuleFactory:[{type:T.X}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var B=function(){function t(t,e,n,r){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=r}return Object.defineProperty(t.prototype,"first",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"last",{get:function(){return this.index===this.count-1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"even",{get:function(){return this.index%2==0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"odd",{get:function(){return!this.even},enumerable:!0,configurable:!0}),t}(),G=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._differ=null}return Object.defineProperty(t.prototype,"ngForTrackBy",{get:function(){return this._trackByFn},set:function(t){n.i(T.K)()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngForTemplate",{set:function(t){t&&(this._template=t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(t){if("ngForOf"in t){var e=t.ngForOf.currentValue;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(t){throw new Error("Cannot find a differ supporting object '"+e+"' of type '"+a(e)+"'. NgFor only supports binding to Iterables such as Arrays.")}}},t.prototype.ngDoCheck=function(){if(this._differ){var t=this._differ.diff(this.ngForOf);t&&this._applyChanges(t)}},t.prototype._applyChanges=function(t){var e=this,n=[];t.forEachOperation(function(t,r,o){if(null==t.previousIndex){var i=e._viewContainer.createEmbeddedView(e._template,new B(null,e.ngForOf,null,null),o),s=new z(t,i);n.push(s)}else if(null==o)e._viewContainer.remove(r);else{var i=e._viewContainer.get(r);e._viewContainer.move(i,o);var s=new z(t,i);n.push(s)}});for(var r=0;r<n.length;r++)this._perViewChange(n[r].view,n[r].record);for(var r=0,o=this._viewContainer.length;r<o;r++){var i=this._viewContainer.get(r);i.context.index=r,i.context.count=o}t.forEachIdentityChange(function(t){e._viewContainer.get(t.currentIndex).context.$implicit=t.item})},t.prototype._perViewChange=function(t,e){t.context.$implicit=e.item},t}();G.decorators=[{type:T.U,args:[{selector:"[ngFor][ngForOf]"}]}],G.ctorParameters=function(){return[{type:T._0},{type:T._1},{type:T.t}]},G.propDecorators={ngForOf:[{type:T.X}],ngForTrackBy:[{type:T.X}],ngForTemplate:[{type:T.X}]};var z=function(){function t(t,e){this.record=t,this.view=e}return t}(),q=function(){function t(t,e){this._viewContainer=t,this._context=new Z,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}return Object.defineProperty(t.prototype,"ngIf",{set:function(t){this._context.$implicit=this._context.ngIf=t,this._updateView()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngIfThen",{set:function(t){this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngIfElse",{set:function(t){this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()},enumerable:!0,configurable:!0}),t.prototype._updateView=function(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))},t}();q.decorators=[{type:T.U,args:[{selector:"[ngIf]"}]}],q.ctorParameters=function(){return[{type:T._0},{type:T._1}]},q.propDecorators={ngIf:[{type:T.X}],ngIfThen:[{type:T.X}],ngIfElse:[{type:T.X}]};var Z=function(){function t(){this.$implicit=null,this.ngIf=null}return t}(),W=function(){function t(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}return t.prototype.create=function(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)},t.prototype.destroy=function(){this._created=!1,this._viewContainerRef.clear()},t.prototype.enforceState=function(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()},t}(),K=function(){function t(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}return Object.defineProperty(t.prototype,"ngSwitch",{set:function(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)},enumerable:!0,configurable:!0}),t.prototype._addCase=function(){return this._caseCount++},t.prototype._addDefault=function(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)},t.prototype._matchCase=function(t){var e=t==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||e,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),e},t.prototype._updateDefaultCases=function(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(var e=0;e<this._defaultViews.length;e++){this._defaultViews[e].enforceState(t)}}},t}();K.decorators=[{type:T.U,args:[{selector:"[ngSwitch]"}]}],K.ctorParameters=function(){return[]},K.propDecorators={ngSwitch:[{type:T.X}]};var X=function(){function t(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new W(t,e)}return t.prototype.ngDoCheck=function(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))},t}();X.decorators=[{type:T.U,args:[{selector:"[ngSwitchCase]"}]}],X.ctorParameters=function(){return[{type:T._0},{type:T._1},{type:K,decorators:[{type:T._2}]}]},X.propDecorators={ngSwitchCase:[{type:T.X}]};var Q=function(){function t(t,e,n){n._addDefault(new W(t,e))}return t}();Q.decorators=[{type:T.U,args:[{selector:"[ngSwitchDefault]"}]}],Q.ctorParameters=function(){return[{type:T._0},{type:T._1},{type:K,decorators:[{type:T._2}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var J=function(){function t(t){this._localization=t,this._caseViews={}}return Object.defineProperty(t.prototype,"ngPlural",{set:function(t){this._switchValue=t,this._updateView()},enumerable:!0,configurable:!0}),t.prototype.addCase=function(t,e){this._caseViews[t]=e},t.prototype._updateView=function(){this._clearViews();var t=Object.keys(this._caseViews),e=i(this._switchValue,t,this._localization);this._activateView(this._caseViews[e])},t.prototype._clearViews=function(){this._activeView&&this._activeView.destroy()},t.prototype._activateView=function(t){t&&(this._activeView=t,this._activeView.create())},t}();J.decorators=[{type:T.U,args:[{selector:"[ngPlural]"}]}],J.ctorParameters=function(){return[{type:I}]},J.propDecorators={ngPlural:[{type:T.X}]};var $=function(){function t(t,e,n,r){this.value=t;var o=!isNaN(Number(t));r.addCase(o?"="+t:t,new W(n,e))}return t}();$.decorators=[{type:T.U,args:[{selector:"[ngPluralCase]"}]}],$.ctorParameters=function(){return[{type:void 0,decorators:[{type:T._3,args:["ngPluralCase"]}]},{type:T._1},{type:T._0},{type:J,decorators:[{type:T._2}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Y=function(){function t(t,e,n){this._differs=t,this._ngEl=e,this._renderer=n}return Object.defineProperty(t.prototype,"ngStyle",{set:function(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())},enumerable:!0,configurable:!0}),t.prototype.ngDoCheck=function(){if(this._differ){var t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}},t.prototype._applyChanges=function(t){var e=this;t.forEachRemovedItem(function(t){return e._setStyle(t.key,null)}),t.forEachAddedItem(function(t){return e._setStyle(t.key,t.currentValue)}),t.forEachChangedItem(function(t){return e._setStyle(t.key,t.currentValue)})},t.prototype._setStyle=function(t,e){var n=t.split("."),r=n[0],o=n[1];e=null!=e&&o?""+e+o:e,this._renderer.setElementStyle(this._ngEl.nativeElement,r,e)},t}();Y.decorators=[{type:T.U,args:[{selector:"[ngStyle]"}]}],Y.ctorParameters=function(){return[{type:T.u},{type:T.V},{type:T.W}]},Y.propDecorators={ngStyle:[{type:T.X}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var tt=function(){function t(t){this._viewContainerRef=t}return Object.defineProperty(t.prototype,"ngOutletContext",{set:function(t){this.ngTemplateOutletContext=t},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(t){this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))},t}();tt.decorators=[{type:T.U,args:[{selector:"[ngTemplateOutlet]"}]}],tt.ctorParameters=function(){return[{type:T._0}]},tt.propDecorators={ngTemplateOutletContext:[{type:T.X}],ngTemplateOutlet:[{type:T.X}],ngOutletContext:[{type:T.X}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var et=[L,U,G,q,tt,Y,K,X,Q,J,$],nt=function(){function t(){}return t.prototype.createSubscription=function(t,e){return t.subscribe({next:e,error:function(t){throw t}})},t.prototype.dispose=function(t){t.unsubscribe()},t.prototype.onDestroy=function(t){t.unsubscribe()},t}(),rt=function(){function t(){}return t.prototype.createSubscription=function(t,e){return t.then(e,function(t){throw t})},t.prototype.dispose=function(t){},t.prototype.onDestroy=function(t){},t}(),ot=new rt,it=new nt,st=function(){function t(t){this._ref=t,this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null,this._strategy=null}return t.prototype.ngOnDestroy=function(){this._subscription&&this._dispose()},t.prototype.transform=function(t){return this._obj?t!==this._obj?(this._dispose(),this.transform(t)):this._latestValue===this._latestReturnedValue?this._latestReturnedValue:(this._latestReturnedValue=this._latestValue,T._4.wrap(this._latestValue)):(t&&this._subscribe(t),this._latestReturnedValue=this._latestValue,this._latestValue)},t.prototype._subscribe=function(t){var e=this;this._obj=t,this._strategy=this._selectStrategy(t),this._subscription=this._strategy.createSubscription(t,function(n){return e._updateLatestValue(t,n)})},t.prototype._selectStrategy=function(e){if(n.i(T._5)(e))return ot;if(n.i(T._6)(e))return it;throw u(t,e)},t.prototype._dispose=function(){this._strategy.dispose(this._subscription),this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null},t.prototype._updateLatestValue=function(t,e){t===this._obj&&(this._latestValue=e,this._ref.markForCheck())},t}();st.decorators=[{type:T._7,args:[{name:"async",pure:!1}]}],st.ctorParameters=function(){return[{type:T._8}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var at=function(){function t(){}return t.prototype.transform=function(e){if(!e)return e;if("string"!=typeof e)throw u(t,e);return e.toLowerCase()},t}();at.decorators=[{type:T._7,args:[{name:"lowercase"}]}],at.ctorParameters=function(){return[]};var ut=function(){function t(){}return t.prototype.transform=function(e){if(!e)return e;if("string"!=typeof e)throw u(t,e);return e.split(/\b/g).map(function(t){return c(t)}).join("")},t}();ut.decorators=[{type:T._7,args:[{name:"titlecase"}]}],ut.ctorParameters=function(){return[]};var ct=function(){function t(){}return t.prototype.transform=function(e){if(!e)return e;if("string"!=typeof e)throw u(t,e);return e.toUpperCase()},t}();ct.decorators=[{type:T._7,args:[{name:"uppercase"}]}],ct.ctorParameters=function(){return[]};var lt={};lt.Decimal=0,lt.Percent=1,lt.Currency=2,lt[lt.Decimal]="Decimal",lt[lt.Percent]="Percent",lt[lt.Currency]="Currency";var pt=function(){function t(){}return t.format=function(t,e,n,r){var o=void 0===r?{}:r,i=o.minimumIntegerDigits,s=o.minimumFractionDigits,a=o.maximumFractionDigits,u=o.currency,c=o.currencyAsSymbol,l=void 0!==c&&c,p={minimumIntegerDigits:i,minimumFractionDigits:s,maximumFractionDigits:a,style:lt[n].toLowerCase()};return n==lt.Currency&&(p.currency=u,p.currencyDisplay=l?"symbol":"code"),new Intl.NumberFormat(e,p).format(t)},t}(),ft=/((?:[^yMLdHhmsazZEwGjJ']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|J+|j+|m+|s+|a|z|Z|G+|w+))(.*)/,ht={yMMMdjms:_(v([m("year",1),g("month",3),m("day",1),m("hour",1),m("minute",1),m("second",1)])),yMdjm:_(v([m("year",1),m("month",1),m("day",1),m("hour",1),m("minute",1)])),yMMMMEEEEd:_(v([m("year",1),g("month",4),g("weekday",4),m("day",1)])),yMMMMd:_(v([m("year",1),g("month",4),m("day",1)])),yMMMd:_(v([m("year",1),g("month",3),m("day",1)])),yMd:_(v([m("year",1),m("month",1),m("day",1)])),jms:_(v([m("hour",1),m("second",1),m("minute",1)])),jm:_(v([m("hour",1),m("minute",1)]))},dt={yyyy:_(m("year",4)),yy:_(m("year",2)),y:_(m("year",1)),MMMM:_(g("month",4)),MMM:_(g("month",3)),MM:_(m("month",2)),M:_(m("month",1)),LLLL:_(g("month",4)),L:_(g("month",1)),dd:_(m("day",2)),d:_(m("day",1)),HH:l(f(_(y(m("hour",2),!1)))),H:f(_(y(m("hour",1),!1))),hh:l(f(_(y(m("hour",2),!0)))),h:f(_(y(m("hour",1),!0))),jj:_(m("hour",2)),j:_(m("hour",1)),mm:l(_(m("minute",2))),m:_(m("minute",1)),ss:l(_(m("second",2))),s:_(m("second",1)),sss:_(m("second",3)),EEEE:_(g("weekday",4)),EEE:_(g("weekday",3)),EE:_(g("weekday",2)),E:_(g("weekday",1)),a:p(_(y(m("hour",1),!0))),Z:d("short"),z:d("long"),ww:_({}),w:_({}),G:_(g("era",1)),GG:_(g("era",2)),GGG:_(g("era",3)),GGGG:_(g("era",4))},yt=new Map,mt=function(){function t(){}return t.format=function(t,e,n){return b(n,t,e)},t}(),gt=/^(\d+)?\.((\d+)(-(\d+))?)?$/,vt=function(){function t(t){this._locale=t}return t.prototype.transform=function(e,n){return void 0===n&&(n=null),C(t,this._locale,e,lt.Decimal,n)},t}();vt.decorators=[{type:T._7,args:[{name:"number"}]}],vt.ctorParameters=function(){return[{type:void 0,decorators:[{type:T.E,args:[T.c]}]}]};var _t=function(){function t(t){this._locale=t}return t.prototype.transform=function(e,n){return void 0===n&&(n=null),C(t,this._locale,e,lt.Percent,n)},t}();_t.decorators=[{type:T._7,args:[{name:"percent"}]}],_t.ctorParameters=function(){return[{type:void 0,decorators:[{type:T.E,args:[T.c]}]}]};var bt=function(){function t(t){this._locale=t}return t.prototype.transform=function(e,n,r,o){return void 0===n&&(n="USD"),void 0===r&&(r=!1),void 0===o&&(o=null),C(t,this._locale,e,lt.Currency,o,n,r)},t}();bt.decorators=[{type:T._7,args:[{name:"currency"}]}],bt.ctorParameters=function(){return[{type:void 0,decorators:[{type:T.E,args:[T.c]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var wt=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,Ct=function(){function t(t){this._locale=t}return t.prototype.transform=function(e,n){void 0===n&&(n="mediumDate");var r;if(x(e)||e!==e)return null;if("string"==typeof e&&(e=e.trim()),S(e))r=e;else if(O(e))r=new Date(parseFloat(e));else if("string"==typeof e&&/^(\d{4}-\d{1,2}-\d{1,2})$/.test(e)){var o=e.split("-").map(function(t){return parseInt(t,10)}),i=o[0],s=o[1],a=o[2];r=new Date(i,s-1,a)}else r=new Date(e);if(!S(r)){var c=void 0;if("string"!=typeof e||!(c=e.match(wt)))throw u(t,e);r=P(c)}return mt.format(r,this._locale,t._ALIASES[n]||n)},t}();Ct._ALIASES={medium:"yMMMdjms",short:"yMdjm",fullDate:"yMMMMEEEEd",longDate:"yMMMMd",mediumDate:"yMMMd",shortDate:"yMd",mediumTime:"jms",shortTime:"jm"},Ct.decorators=[{type:T._7,args:[{name:"date",pure:!0}]}],Ct.ctorParameters=function(){return[{type:void 0,decorators:[{type:T.E,args:[T.c]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Et=/#/g,Ot=function(){function t(t){this._localization=t}return t.prototype.transform=function(e,n){if(null==e)return"";if("object"!=typeof n||null===n)throw u(t,n);return n[i(e,Object.keys(n),this._localization)].replace(Et,e.toString())},t}();Ot.decorators=[{type:T._7,args:[{name:"i18nPlural",pure:!0}]}],Ot.ctorParameters=function(){return[{type:I}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var xt=function(){function t(){}return t.prototype.transform=function(e,n){if(null==e)return"";if("object"!=typeof n||"string"!=typeof e)throw u(t,n);return n.hasOwnProperty(e)?n[e]:n.hasOwnProperty("other")?n.other:""},t}();xt.decorators=[{type:T._7,args:[{name:"i18nSelect",pure:!0}]}],xt.ctorParameters=function(){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
+ */
+var St=function(){function t(){}return t.prototype.transform=function(t){return JSON.stringify(t,null,2)},t}();St.decorators=[{type:T._7,args:[{name:"json",pure:!1}]}],St.ctorParameters=function(){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
+ */
+var Pt=function(){function t(){}return t.prototype.transform=function(e,n,r){if(null==e)return e;if(!this.supports(e))throw u(t,e);return e.slice(n,r)},t.prototype.supports=function(t){return"string"==typeof t||Array.isArray(t)},t}();Pt.decorators=[{type:T._7,args:[{name:"slice",pure:!1}]}],Pt.ctorParameters=function(){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
+ */
+var At=[st,ct,at,St,Pt,vt,_t,ut,bt,Ct,Ot,xt],Tt=function(){function t(){}return t}();Tt.decorators=[{type:T.A,args:[{declarations:[et,At],exports:[et,At],providers:[{provide:I,useClass:F}]}]}],Tt.ctorParameters=function(){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
+ */
+var kt="browser";new T.B("4.0.2")},"3j3K":function(t,e,n){"use strict";(function(t){function r(){if(!Or){var t=Er.Symbol;if(t&&t.iterator)Or=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n<e.length;++n){var r=e[n];"entries"!==r&&"size"!==r&&Map.prototype[r]===Map.prototype.entries&&(Or=r)}}return Or}function o(t){Zone.current.scheduleMicroTask("scheduleMicrotask",t)}function i(t,e){return t===e||"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)}function s(t){if("string"==typeof t)return t;if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;var e=t.toString();if(null==e)return""+e;var n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function a(t){return"function"==typeof t&&t.hasOwnProperty("annotation")&&(t=t.annotation),t}function u(t,e){if(t===Object||t===String||t===Function||t===Number||t===Array)throw new Error("Can not use native "+s(t)+" as constructor");if("function"==typeof t)return t;if(Array.isArray(t)){var n=t,r=n.length-1,o=t[r];if("function"!=typeof o)throw new Error("Last position of Class method array must be Function in key "+e+" was '"+s(o)+"'");if(r!=o.length)throw new Error("Number of annotations ("+r+") does not match number of arguments ("+o.length+") in the function: "+s(o));for(var i=[],u=0,c=n.length-1;u<c;u++){var l=[];i.push(l);var p=n[u];if(Array.isArray(p))for(var f=0;f<p.length;f++)l.push(a(p[f]));else"function"==typeof p?l.push(a(p)):l.push(p)}return Sr.defineMetadata("parameters",i,o),o}throw new Error("Only Function or Array is supported in Class definition for key '"+e+"' is '"+s(t)+"'")}function c(t){var e=u(t.hasOwnProperty("constructor")?t.constructor:void 0,"constructor"),n=e.prototype;if(t.hasOwnProperty("extends")){if("function"!=typeof t.extends)throw new Error("Class definition 'extends' property must be a constructor function was: "+s(t.extends));e.prototype=n=Object.create(t.extends.prototype)}for(var r in t)"extends"!==r&&"prototype"!==r&&t.hasOwnProperty(r)&&(n[r]=u(t[r],r));this&&this.annotations instanceof Array&&Sr.defineMetadata("annotations",this.annotations,e);var o=e.name;return o&&"constructor"!==o||(e.overriddenName="class"+xr++),e}function l(t,e,n,r){function o(t){if(!Sr||!Sr.getOwnMetadata)throw"reflect-metadata shim is required when using class decorators";if(this instanceof o)return i.call(this,t),this;var e=new o(t),n="function"==typeof this&&Array.isArray(this.annotations)?this.annotations:[];n.push(e);var s=function(t){var n=Sr.getOwnMetadata("annotations",t)||[];return n.push(e),Sr.defineMetadata("annotations",n,t),t};return s.annotations=n,s.Class=c,r&&r(s),s}var i=p([e]);return n&&(o.prototype=Object.create(n.prototype)),o.prototype.toString=function(){return"@"+t},o.annotationCls=o,o}function p(t){return function(){for(var e=this,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];t.forEach(function(t,r){var o=n[r];if(Array.isArray(t))e[t[0]]=void 0===o?t[1]:o;else for(var i in t)e[i]=o&&o.hasOwnProperty(i)?o[i]:t[i]})}}function f(t,e,n){function r(){function t(t,e,n){for(var r=Sr.getOwnMetadata("parameters",t)||[];r.length<=n;)r.push(null);return r[n]=r[n]||[],r[n].push(i),Sr.defineMetadata("parameters",r,t),t}for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];if(this instanceof r)return o.apply(this,e),this;var i=new(r.bind.apply(r,[void 0].concat(e)));return t.annotation=i,t}var o=p(e);return n&&(r.prototype=Object.create(n.prototype)),r.prototype.toString=function(){return"@"+t},r.annotationCls=r,r}function h(t,e,n){function r(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(this instanceof r)return o.apply(this,t),this;var n=new(r.bind.apply(r,[void 0].concat(t)));return function(t,e){var r=Sr.getOwnMetadata("propMetadata",t.constructor)||{};r[e]=r.hasOwnProperty(e)&&r[e]||[],r[e].unshift(n),Sr.defineMetadata("propMetadata",r,t.constructor)}}var o=p(e);return n&&(r.prototype=Object.create(n.prototype)),r.prototype.toString=function(){return"@"+t},r.annotationCls=r,r}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function d(t){return t.__forward_ref__=d,t.toString=function(){return s(this())},t}function y(t){return"function"==typeof t&&t.hasOwnProperty("__forward_ref__")&&t.__forward_ref__===d?t():t}function m(t){return t[Xr]}function g(t){return t[Qr]}function v(t){return t[Jr]||_}function _(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];t.error.apply(t,e)}function b(t,e){var n=t+" caused by: "+(e instanceof Error?e.message:e),r=Error(n);return r[Qr]=e,r}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function w(t){for(var e=[],n=0;n<t.length;++n){if(e.indexOf(t[n])>-1)return e.push(t[n]),e;e.push(t[n])}return e}function C(t){if(t.length>1){return" ("+w(t.slice().reverse()).map(function(t){return s(t.token)}).join(" -> ")+")"}return""}function E(t,e,n,r){var o=r?b("",r):Error();return o.addKey=O,o.keys=[e],o.injectors=[t],o.constructResolvingMessage=n,o.message=o.constructResolvingMessage(),o[Qr]=r,o}function O(t,e){this.injectors.push(t),this.keys.push(e),this.message=this.constructResolvingMessage()}function x(t,e){return E(t,e,function(){return"No provider for "+s(this.keys[0].token)+"!"+C(this.keys)})}function S(t,e){return E(t,e,function(){return"Cannot instantiate cyclic dependency!"+C(this.keys)})}function P(t,e,n,r){return E(t,r,function(){var t=s(this.keys[0].token);return g(this).message+": Error during instantiation of "+t+"!"+C(this.keys)+"."},e)}function A(t){return Error("Invalid provider - only instances of Provider and Type are allowed, got: "+t)}function T(t,e){for(var n=[],r=0,o=e.length;r<o;r++){var i=e[r];i&&0!=i.length?n.push(i.map(s).join(" ")):n.push("?")}return Error("Cannot resolve all parameters for '"+s(t)+"'("+n.join(", ")+"). Make sure that all the parameters are decorated with Inject or have valid type annotations and that '"+s(t)+"' is decorated with Injectable.")}function k(t){return Error("Index "+t+" is out-of-bounds.")}function V(t,e){return Error("Cannot mix multi providers and regular providers, got: "+t+" "+e)}function M(t){return"function"==typeof t}function N(t){return t?t.map(function(t){var e=t.type,n=e.annotationCls,r=t.args?t.args:[];return new(n.bind.apply(n,[void 0].concat(r)))}):[]}function j(t){var e=Object.getPrototypeOf(t.prototype);return(e?e.constructor:null)||Object}function R(t){var e,n;if(t.useClass){var r=y(t.useClass);e=ao.factory(r),n=U(r)}else t.useExisting?(e=function(t){return t},n=[uo.fromKey(Yr.get(t.useExisting))]):t.useFactory?(e=t.useFactory,n=L(t.useFactory,t.deps)):(e=function(){return t.useValue},n=co);return new po(e,n)}function D(t){return new lo(Yr.get(t.provide),[R(t)],t.multi||!1)}function I(t){var e=H(t,[]),n=e.map(D),r=F(n,new Map);return Array.from(r.values())}function F(t,e){for(var n=0;n<t.length;n++){var r=t[n],o=e.get(r.key.id);if(o){if(r.multiProvider!==o.multiProvider)throw V(o,r);if(r.multiProvider)for(var i=0;i<r.resolvedFactories.length;i++)o.resolvedFactories.push(r.resolvedFactories[i]);else e.set(r.key.id,r)}else{var s=void 0;s=r.multiProvider?new lo(r.key,r.resolvedFactories.slice(),r.multiProvider):r,e.set(r.key.id,s)}}return e}function H(t,e){return t.forEach(function(t){if(t instanceof no)e.push({provide:t,useClass:t});else if(t&&"object"==typeof t&&void 0!==t.provide)e.push(t);else{if(!(t instanceof Array))throw A(t);H(t,e)}}),e}function L(t,e){if(e){var n=e.map(function(t){return[t]});return e.map(function(e){return B(t,e,n)})}return U(t)}function U(t){var e=ao.parameters(t);if(!e)return[];if(e.some(function(t){return null==t}))throw T(t,e);return e.map(function(n){return B(t,n,e)})}function B(t,e,n){var r=null,o=!1;if(!Array.isArray(e))return e instanceof Hr?G(e.token,o,null):G(e,o,null);for(var i=null,s=0;s<e.length;++s){var a=e[s];a instanceof no?r=a:a instanceof Hr?r=a.token:a instanceof Lr?o=!0:a instanceof Br||a instanceof Gr?i=a:a instanceof _r&&(r=a)}if(null!=(r=y(r)))return G(r,o,i);throw T(t,n)}function G(t,e,n){return new uo(Yr.get(t),e,n)}function z(t,e){for(var n=new Array(t._providers.length),r=0;r<t._providers.length;++r)n[r]=e(t.getProviderAtIndex(r));return n}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function q(t){return!!t&&"function"==typeof t.then}function Z(t){return!!t&&"function"==typeof t.subscribe}function W(){return""+K()+K()+K()}function K(){return String.fromCharCode(97+Math.floor(25*Math.random()))}function X(){throw new Error("Runtime compiler is not loaded")}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function Q(t){var e=Error("No component factory found for "+s(t)+". Did you add it to @NgModule.entryComponents?");return e[To]=t,e}function J(){var t=Er.wtf;return!(!t||!(Mo=t.trace))&&(No=Mo.events,!0)}function $(t,e){return void 0===e&&(e=null),No.createScope(t,e)}function Y(t,e){return Mo.leaveScope(t,e),e}function tt(t,e){return null}function et(t){Xo=t}function nt(){if(Jo)throw new Error("Cannot enable prod mode after platform setup.");Qo=!1}function rt(){return Jo=!0,Qo}function ot(t){if(Wo&&!Wo.destroyed&&!Wo.injector.get($o,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Wo=t.get(ti);var e=t.get(wo,null);return e&&e.forEach(function(t){return t()}),Wo}function it(t,e,n){void 0===n&&(n=[]);var r=new _r("Platform: "+e);return function(e){void 0===e&&(e=[]);var o=at();return o&&!o.injector.get($o,!1)||(t?t(n.concat(e).concat({provide:r,useValue:!0})):ot(ho.resolveAndCreate(n.concat(e).concat({provide:r,useValue:!0})))),st(r)}}function st(t){var e=at();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 at(){return Wo&&!Wo.destroyed?Wo:null}function ut(t,e){try{var n=e();return q(n)?n.catch(function(e){throw t.handleError(e),e}):n}catch(e){throw t.handleError(e),e}}function ct(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}function lt(t){return t.reduce(function(t,e){var n=Array.isArray(e)?lt(e):e;return t.concat(n)},[])}function pt(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}function ft(t,e,n){t.childNodes.forEach(function(t){t instanceof wi&&(e(t)&&n.push(t),ft(t,e,n))})}function ht(t,e,n){t instanceof wi&&t.childNodes.forEach(function(t){e(t)&&n.push(t),t instanceof wi&&ht(t,e,n)})}function dt(t){return Ci.get(t)||null}function yt(t){Ci.set(t.nativeNode,t)}function mt(t){Ci.delete(t.nativeNode)}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function gt(t,e){var n=vt(t),r=vt(e);if(n&&r)return _t(t,e,gt);var o=t&&("object"==typeof t||"function"==typeof t),s=e&&("object"==typeof e||"function"==typeof e);return!(n||!o||r||!s)||i(t,e)}function vt(t){return!!wt(t)&&(Array.isArray(t)||!(t instanceof Map)&&r()in t)}function _t(t,e,n){for(var o=t[r()](),i=e[r()]();;){var s=o.next(),a=i.next();if(s.done&&a.done)return!0;if(s.done||a.done)return!1;if(!n(s.value,a.value))return!1}}function bt(t,e){if(Array.isArray(t))for(var n=0;n<t.length;n++)e(t[n]);else for(var o=t[r()](),i=void 0;!(i=o.next()).done;)e(i.value)}function wt(t){return null!==t&&("function"==typeof t||"object"==typeof t)}function Ct(t,e,n){var r=t.previousIndex;if(null===r)return r;var o=0;return n&&r<n.length&&(o=n[r]),r+e+o}function Et(t){return t.name||typeof t}/**
+ * @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
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function Ot(){return ao}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function xt(t,e){return t.nodes[e]}function St(t,e){return t.nodes[e]}function Pt(t,e){return t.nodes[e]}function At(t,e){return t.nodes[e]}function Tt(t,e){return t.nodes[e]}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function kt(t,e,n,r){var o="ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '"+e+"'. Current value: '"+n+"'.";return r&&(o+=" 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 ?"),Mt(o,t)}function Vt(t,e){return t instanceof Error||(t=new Error(t.toString())),Nt(t,e),t}function Mt(t,e){var n=new Error(t);return Nt(n,e),n}function Nt(t,e){t[Xr]=e,t[Jr]=e.logError.bind(e)}function jt(t){return!!m(t)}function Rt(t){return new Error("ViewDestroyedError: Attempt to use a destroyed view: "+t)}function Dt(t){var e=Ki.get(t);return e||(e=s(t)+"_"+Ki.size,Ki.set(t,e)),e}function It(t){return{id:Xi,styles:t.styles,encapsulation:t.encapsulation,data:t.data}}function Ft(t){if(t&&t.id===Xi){var e=null!=t.encapsulation&&t.encapsulation!==Dr.None||t.styles.length||Object.keys(t.data).length;t.id=e?"c"+Ji++:Qi}return t&&t.id===Qi&&(t=null),t||null}function Ht(t,e,n,r){var o=t.oldValues;return!(!(1&t.state)&&i(o[e.bindingIndex+n],r))}function Lt(t,e,n,r){return!!Ht(t,e,n,r)&&(t.oldValues[e.bindingIndex+n]=r,!0)}function Ut(t,e,n,r){var o=t.oldValues[e.bindingIndex+n];if(1&t.state||!gt(o,r))throw kt(Zi.createDebugContext(t,e.index),o,r,0!=(1&t.state))}function Bt(t){for(var e=t;e;)2&e.def.flags&&(e.state|=2),e=e.viewContainerParent||e.parent}function Gt(t,e,n,r){return Bt(16777216&t.def.nodes[e].flags?St(t,e).componentView:t),Zi.handleEvent(t,e,n,r)}function zt(t){if(t.parent){return St(t.parent,t.parentNodeDef.index)}return null}function qt(t){return t.parent?t.parentNodeDef.parent:null}function Zt(t,e){switch(100673535&e.flags){case 1:return St(t,e.index).renderElement;case 2:return xt(t,e.index).renderText}}function Wt(t,e){return t?t+":"+e:e}function Kt(t){return!!t.parent&&!!(16384&t.parentNodeDef.flags)}function Xt(t){return!(!t.parent||16384&t.parentNodeDef.flags)}function Qt(t){return 1<<t%32}function Jt(t){var e={},n=0,r={};return t&&t.forEach(function(t){var o=t[0],i=t[1];"number"==typeof o?(e[o]=i,n|=Qt(o)):r[o]=i}),{matchedQueries:e,references:r,matchedQueryIds:n}}function $t(t,e,n){var r=n.renderParent;return r?0==(1&r.flags)||0==(16777216&r.flags)||r.element.componentRendererType&&r.element.componentRendererType.encapsulation===Dr.Native?St(t,n.renderParent.index).renderElement:void 0:e}function Yt(t){var e=$i.get(t);return e||(e=t(function(){return Wi}),e.factory=t,$i.set(t,e)),e}function te(t){var e=[];return ee(t,0,void 0,void 0,e),e}function ee(t,e,n,r,o){3===e&&(n=t.renderer.parentNode(Zt(t,t.def.lastRenderRootNode))),ne(t,e,0,t.def.nodes.length-1,n,r,o)}function ne(t,e,n,r,o,i,s){for(var a=n;a<=r;a++){var u=t.def.nodes[a];7&u.flags&&oe(t,u,e,o,i,s),a+=u.childCount}}function re(t,e,n,r,o,i){for(var s=t;s&&!Kt(s);)s=s.parent;for(var a=s.parent,u=qt(s),c=u.index+1,l=u.index+u.childCount,p=c;p<=l;p++){var f=a.def.nodes[p];f.ngContentIndex===e&&oe(a,f,n,r,o,i),p+=f.childCount}if(!a.parent){var h=t.root.projectableNodes[e];if(h)for(var p=0;p<h.length;p++)ie(t,h[p],n,r,o,i)}}function oe(t,e,n,r,o,i){if(4&e.flags)re(t,e.ngContent.index,n,r,o,i);else{var s=Zt(t,e);if(3===n&&16777216&e.flags&&48&e.bindingFlags){if(16&e.bindingFlags&&ie(t,s,n,r,o,i),32&e.bindingFlags){var a=St(t,e.index).componentView;ie(a,s,n,r,o,i)}}else ie(t,s,n,r,o,i);if(8388608&e.flags)for(var u=St(t,e.index).viewContainer._embeddedViews,c=0;c<u.length;c++)ee(u[c],n,r,o,i);1&e.flags&&!e.element.name&&ne(t,n,e.index+1,e.index+e.childCount,r,o,i)}}function ie(t,e,n,r,o,i){var s=t.renderer;switch(n){case 1:s.appendChild(r,e);break;case 2:s.insertBefore(r,e,o);break;case 3:s.removeChild(r,e);break;case 0:i.push(e)}}function se(t){if(":"===t[0]){var e=t.match(Yi);return[e[1],e[2]]}return["",t]}function ae(t){for(var e=0,n=0;n<t.length;n++)e|=t[n].flags;return e}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function ue(t,e,n,r,o,i){t|=1;var s=Jt(e),a=s.matchedQueries,u=s.references;return{index:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:a,matchedQueryIds:s.matchedQueryIds,references:u,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?Yt(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Wi},provider:null,text:null,query:null,ngContent:null}}function ce(t,e,n,r,o,i,s,a,u,c,l){void 0===i&&(i=[]),u||(u=Wi);var p=Jt(e),f=p.matchedQueries,h=p.references,d=p.matchedQueryIds,y=null,m=null;o&&(N=se(o),y=N[0],m=N[1]),s=s||[];for(var g=new Array(s.length),v=0;v<s.length;v++){var _=s[v],b=_[0],w=_[1],C=_[2],E=se(w),O=E[0],x=E[1],S=void 0,P=void 0;switch(15&b){case 4:P=C;break;case 1:case 8:S=C}g[v]={flags:b,ns:O,name:x,nonMinifiedName:x,securityContext:S,suffix:P}}a=a||[];for(var A=new Array(a.length),v=0;v<a.length;v++){var T=a[v],k=T[0],V=T[1];A[v]={type:0,target:k,eventName:V,propName:null}}i=i||[];var M=i.map(function(t){var e=t[0],n=t[1],r=se(e);return[r[0],r[1],n]});return l=Ft(l),c&&(t|=16777216),t|=1,{index:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:f,matchedQueryIds:d,references:h,ngContentIndex:n,childCount:r,bindings:g,bindingFlags:ae(g),outputs:A,element:{ns:y,name:m,attrs:M,template:null,componentProvider:null,componentView:c||null,componentRendererType:l,publicProviders:null,allProviders:null,handleEvent:u||Wi},provider:null,text:null,query:null,ngContent:null};var N}function le(t,e,n){var r,o=n.element,i=t.root.selectorOrNode,s=t.renderer;if(t.parent||!i){r=o.name?s.createElement(o.name,o.ns):s.createComment("");var a=$t(t,e,n);a&&s.appendChild(a,r)}else r=s.selectRootElement(i);if(o.attrs)for(var u=0;u<o.attrs.length;u++){var c=o.attrs[u],l=c[0],p=c[1],f=c[2];s.setAttribute(r,p,f,l)}return r}function pe(t,e,n,r){for(var o=0;o<n.outputs.length;o++){var i=n.outputs[o],s=fe(t,n.index,Wt(i.target,i.eventName)),a=i.target,u=t;"component"===i.target&&(a=null,u=e);var c=u.renderer.listen(a||r,i.eventName,s);t.disposables[n.outputIndex+o]=c}}function fe(t,e,n){return function(r){return Gt(t,e,n,r)}}function he(t,e,n,r,o,i,s,a,u,c,l,p){var f=e.bindings.length,h=!1;return f>0&&ye(t,e,0,n)&&(h=!0),f>1&&ye(t,e,1,r)&&(h=!0),f>2&&ye(t,e,2,o)&&(h=!0),f>3&&ye(t,e,3,i)&&(h=!0),f>4&&ye(t,e,4,s)&&(h=!0),f>5&&ye(t,e,5,a)&&(h=!0),f>6&&ye(t,e,6,u)&&(h=!0),f>7&&ye(t,e,7,c)&&(h=!0),f>8&&ye(t,e,8,l)&&(h=!0),f>9&&ye(t,e,9,p)&&(h=!0),h}function de(t,e,n){for(var r=!1,o=0;o<n.length;o++)ye(t,e,o,n[o])&&(r=!0);return r}function ye(t,e,n,r){if(!Lt(t,e,n,r))return!1;var o=e.bindings[n],i=St(t,e.index),s=i.renderElement,a=o.name;switch(15&o.flags){case 1:me(t,o,s,o.ns,a,r);break;case 2:ge(t,s,a,r);break;case 4:ve(t,o,s,a,r);break;case 8:_e(16777216&e.flags&&32&o.flags?i.componentView:t,o,s,a,r)}return!0}function me(t,e,n,r,o,i){var s=e.securityContext,a=s?t.root.sanitizer.sanitize(s,i):i;a=null!=a?a.toString():null;var u=t.renderer;null!=i?u.setAttribute(n,o,a,r):u.removeAttribute(n,o,r)}function ge(t,e,n,r){var o=t.renderer;r?o.addClass(e,n):o.removeClass(e,n)}function ve(t,e,n,r,o){var i=t.root.sanitizer.sanitize(zi.STYLE,o);if(null!=i){i=i.toString();var s=e.suffix;null!=s&&(i+=s)}else i=null;var a=t.renderer;null!=i?a.setStyle(n,r,i):a.removeStyle(n,r)}function _e(t,e,n,r,o){var i=e.securityContext,s=i?t.root.sanitizer.sanitize(i,o):o;t.renderer.setProperty(n,r,s)}function be(t,e,n){var r=$t(t,e,n);if(r){re(t,n.ngContent.index,1,r,null,void 0)}}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function we(t,e,n,r){var o=e.viewContainer._embeddedViews;null!==n&&void 0!==n||(n=o.length),r.viewContainerParent=t,Se(o,n,r);var i=zt(r);if(i&&i!==e){var s=i.template._projectedViews;s||(s=i.template._projectedViews=[]),s.push(r)}Zi.dirtyParentQueries(r),Oe(e,n>0?o[n-1]:null,r)}function Ce(t,e){var n=t.viewContainer._embeddedViews;if((null==e||e>=n.length)&&(e=n.length-1),e<0)return null;var r=n[e];r.viewContainerParent=null,Pe(n,e);var o=zt(r);if(o&&o!==t){var i=o.template._projectedViews;Pe(i,i.indexOf(r))}return Zi.dirtyParentQueries(r),xe(r),r}function Ee(t,e,n){var r=t.viewContainer._embeddedViews,o=r[e];return Pe(r,e),null==n&&(n=r.length),Se(r,n,o),Zi.dirtyParentQueries(o),xe(o),Oe(t,n>0?r[n-1]:null,o),o}function Oe(t,e,n){var r=e?Zt(e,e.def.lastRenderRootNode):t.renderElement;ee(n,2,n.renderer.parentNode(r),n.renderer.nextSibling(r),void 0)}function xe(t){ee(t,3,null,null,void 0)}function Se(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Pe(t,e){e>=t.length-1?t.pop():t.splice(e,1)}function Ae(t,e,n,r,o,i){return new es(t,e,n,r,o,i)}function Te(t,e,n){return new rs(t,e,n)}function ke(t){return new os(t)}function Ve(t,e){return new is(t,e)}function Me(t,e){return new ss(t,e)}function Ne(t,e){var n=t.def.nodes[e];if(1&n.flags){var r=St(t,n.index);return n.element.template?r.template:r.renderElement}if(2&n.flags)return xt(t,n.index).renderText;if(10120&n.flags)return Pt(t,n.index).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function je(t){return new as(t.renderer)}function Re(t,e,n,r,o,i,s){var a=[];if(i)for(var u in i){var c=i[u],l=c[0],p=c[1];a[l]={flags:8,name:u,nonMinifiedName:p,ns:null,securityContext:null,suffix:null}}var f=[];if(s)for(var h in s)f.push({type:1,propName:h,target:null,eventName:s[h]});return t|=8192,Ie(t,e,n,r,r,o,a,f)}function De(t,e,n,r,o){return Ie(t,e,0,n,r,o)}function Ie(t,e,n,r,o,i,s,a){var u=Jt(e),c=u.matchedQueries,l=u.references,p=u.matchedQueryIds;a||(a=[]),s||(s=[]);var f=i.map(function(t){var e,n;return Array.isArray(t)?(n=t[0],e=t[1]):(n=0,e=t),{flags:n,token:e,tokenKey:Dt(e)}});return{index:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:p,references:l,ngContentIndex:-1,childCount:n,bindings:s,bindingFlags:ae(s),outputs:a,element:null,provider:{token:r,tokenKey:Dt(r),value:o,deps:f},text:null,query:null,ngContent:null}}function Fe(t,e){return 2048&e.flags?ys:ze(t,e)}function He(t,e){for(var n=t;n.parent&&!Kt(n);)n=n.parent;return qe(n.parent,qt(n),!0,e.provider.value,e.provider.deps)}function Le(t,e){var n=(16384&e.flags)>0,r=qe(t,e.parent,n,e.provider.value,e.provider.deps);if(e.outputs.length)for(var o=0;o<e.outputs.length;o++){var i=e.outputs[o],s=r[i.propName].subscribe(Ue(t,e.parent.index,i.eventName));t.disposables[e.outputIndex+o]=s.unsubscribe.bind(s)}return r}function Ue(t,e,n){return function(r){return Gt(t,e,n,r)}}function Be(t,e,n,r,o,i,s,a,u,c,l,p){var f=Pt(t,e.index),h=f.instance,d=!1,y=void 0,m=e.bindings.length;return m>0&&Ht(t,e,0,n)&&(d=!0,y=Xe(t,f,e,0,n,y)),m>1&&Ht(t,e,1,r)&&(d=!0,y=Xe(t,f,e,1,r,y)),m>2&&Ht(t,e,2,o)&&(d=!0,y=Xe(t,f,e,2,o,y)),m>3&&Ht(t,e,3,i)&&(d=!0,y=Xe(t,f,e,3,i,y)),m>4&&Ht(t,e,4,s)&&(d=!0,y=Xe(t,f,e,4,s,y)),m>5&&Ht(t,e,5,a)&&(d=!0,y=Xe(t,f,e,5,a,y)),m>6&&Ht(t,e,6,u)&&(d=!0,y=Xe(t,f,e,6,u,y)),m>7&&Ht(t,e,7,c)&&(d=!0,y=Xe(t,f,e,7,c,y)),m>8&&Ht(t,e,8,l)&&(d=!0,y=Xe(t,f,e,8,l,y)),m>9&&Ht(t,e,9,p)&&(d=!0,y=Xe(t,f,e,9,p,y)),y&&h.ngOnChanges(y),1&t.state&&32768&e.flags&&h.ngOnInit(),131072&e.flags&&h.ngDoCheck(),d}function Ge(t,e,n){for(var r=Pt(t,e.index),o=r.instance,i=!1,s=void 0,a=0;a<n.length;a++)Ht(t,e,a,n[a])&&(i=!0,s=Xe(t,r,e,a,n[a],s));return s&&o.ngOnChanges(s),1&t.state&&32768&e.flags&&o.ngOnInit(),131072&e.flags&&o.ngDoCheck(),i}function ze(t,e){var n,r=(4096&e.flags)>0,o=e.provider;switch(100673535&e.flags){case 256:n=qe(t,e.parent,r,o.value,o.deps);break;case 512:n=Ze(t,e.parent,r,o.value,o.deps);break;case 1024:n=We(t,e.parent,r,o.deps[0]);break;case 128:n=o.value}return n}function qe(t,e,n,r,o){var i,s=o.length;switch(s){case 0:i=new r;break;case 1:i=new r(We(t,e,n,o[0]));break;case 2:i=new r(We(t,e,n,o[0]),We(t,e,n,o[1]));break;case 3:i=new r(We(t,e,n,o[0]),We(t,e,n,o[1]),We(t,e,n,o[2]));break;default:for(var a=new Array(s),u=0;u<s;u++)a[u]=We(t,e,n,o[u]);i=new(r.bind.apply(r,[void 0].concat(a)))}return i}function Ze(t,e,n,r,o){var i,s=o.length;switch(s){case 0:i=r();break;case 1:i=r(We(t,e,n,o[0]));break;case 2:i=r(We(t,e,n,o[0]),We(t,e,n,o[1]));break;case 3:i=r(We(t,e,n,o[0]),We(t,e,n,o[1]),We(t,e,n,o[2]));break;default:for(var a=Array(s),u=0;u<s;u++)a[u]=We(t,e,n,o[u]);i=r.apply(void 0,a)}return i}function We(t,e,n,r,o){if(void 0===o&&(o=Kr.THROW_IF_NOT_FOUND),8&r.flags)return r.token;var i=t;2&r.flags&&(o=null);var s=r.tokenKey;for(e&&1&r.flags&&(n=!1,e=e.parent);t;){if(e)switch(s){case us:var a=Ke(t,e,n);return je(a);case cs:var a=Ke(t,e,n);return a.renderer;case ls:return new ui(St(t,e.index).renderElement);case ps:return St(t,e.index).viewContainer;case fs:if(e.element.template)return St(t,e.index).template;break;case hs:return ke(Ke(t,e,n));case ds:return Me(t,e);default:var u=(n?e.element.allProviders:e.element.publicProviders)[s];if(u){var c=Pt(t,u.index);return c.instance===ys&&(c.instance=ze(t,u)),c.instance}}n=Kt(t),e=qt(t),t=t.parent}var l=i.root.injector.get(r.token,ms);return l!==ms||o===ms?l:i.root.ngModule.injector.get(r.token,o)}function Ke(t,e,n){var r;if(n)r=St(t,e.index).componentView;else for(r=t;r.parent&&!Kt(r);)r=r.parent;return r}function Xe(t,e,n,r,o,i){if(16384&n.flags){var s=St(t,n.parent.index).componentView;2&s.def.flags&&(s.state|=2)}var a=n.bindings[r],u=a.name;if(e.instance[u]=o,262144&n.flags){i=i||{};var c=t.oldValues[n.bindingIndex+r];c instanceof Ei&&(c=c.wrapped);i[n.bindings[r].nonMinifiedName]=new Oi(c,o,0!=(1&t.state))}return t.oldValues[n.bindingIndex+r]=o,i}function Qe(t,e){if(t.def.nodeFlags&e)for(var n=t.def.nodes,r=0;r<n.length;r++){var o=n[r],i=o.parent;for(!i&&o.flags&e&&$e(t,r,o.flags&e),0==(o.childFlags&e)&&(r+=o.childCount);i&&1&i.flags&&r===i.index+i.childCount;)i.directChildFlags&e&&Je(t,i,e),i=i.parent}}function Je(t,e,n){for(var r=e.index+1;r<=e.index+e.childCount;r++){var o=t.def.nodes[r];o.flags&n&&$e(t,r,o.flags&n),r+=o.childCount}}function $e(t,e,n){var r=Pt(t,e).instance;r!==ys&&(Zi.setCurrentNode(t,e),524288&n&&r.ngAfterContentInit(),1048576&n&&r.ngAfterContentChecked(),2097152&n&&r.ngAfterViewInit(),4194304&n&&r.ngAfterViewChecked(),65536&n&&r.ngOnDestroy())}function Ye(t,e){return{value:void 0}}function tn(t,e,n,r,o,i,s,a,u,c,l,p){var f=e.bindings,h=!1,d=f.length;if(d>0&&Lt(t,e,0,n)&&(h=!0),d>1&&Lt(t,e,1,r)&&(h=!0),d>2&&Lt(t,e,2,o)&&(h=!0),d>3&&Lt(t,e,3,i)&&(h=!0),d>4&&Lt(t,e,4,s)&&(h=!0),d>5&&Lt(t,e,5,a)&&(h=!0),d>6&&Lt(t,e,6,u)&&(h=!0),d>7&&Lt(t,e,7,c)&&(h=!0),d>8&&Lt(t,e,8,l)&&(h=!0),d>9&&Lt(t,e,9,p)&&(h=!0),h){var y=At(t,e.index),m=void 0;switch(100673535&e.flags){case 16:m=new Array(f.length),d>0&&(m[0]=n),d>1&&(m[1]=r),d>2&&(m[2]=o),d>3&&(m[3]=i),d>4&&(m[4]=s),d>5&&(m[5]=a),d>6&&(m[6]=u),d>7&&(m[7]=c),d>8&&(m[8]=l),d>9&&(m[9]=p);break;case 32:m={},d>0&&(m[f[0].name]=n),d>1&&(m[f[1].name]=r),d>2&&(m[f[2].name]=o),d>3&&(m[f[3].name]=i),d>4&&(m[f[4].name]=s),d>5&&(m[f[5].name]=a),d>6&&(m[f[6].name]=u),d>7&&(m[f[7].name]=c),d>8&&(m[f[8].name]=l),d>9&&(m[f[9].name]=p);break;case 64:var g=n;switch(d){case 1:m=g.transform(n);break;case 2:m=g.transform(r);break;case 3:m=g.transform(r,o);break;case 4:m=g.transform(r,o,i);break;case 5:m=g.transform(r,o,i,s);break;case 6:m=g.transform(r,o,i,s,a);break;case 7:m=g.transform(r,o,i,s,a,u);break;case 8:m=g.transform(r,o,i,s,a,u,c);break;case 9:m=g.transform(r,o,i,s,a,u,c,l);break;case 10:m=g.transform(r,o,i,s,a,u,c,l,p)}}y.value=m}return h}function en(t,e,n){for(var r=e.bindings,o=!1,i=0;i<n.length;i++)Lt(t,e,i,n[i])&&(o=!0);if(o){var s=At(t,e.index),a=void 0;switch(100673535&e.flags){case 16:a=n;break;case 32:a={};for(var i=0;i<n.length;i++)a[r[i].name]=n[i];break;case 64:var u=n[0],c=n.slice(1);a=u.transform.apply(u,c)}s.value=a}return o}function nn(){return new ci}function rn(t){for(var e=t.def.nodeMatchedQueries;t.parent&&Xt(t);){var n=t.parentNodeDef;t=t.parent;for(var r=n.index+n.childCount,o=0;o<=r;o++){var i=t.def.nodes[o];33554432&i.flags&&268435456&i.flags&&(i.query.filterId&e)===i.query.filterId&&Tt(t,o).setDirty(),!(1&i.flags&&o+i.childCount<n.index)&&33554432&i.childFlags&&268435456&i.childFlags||(o+=i.childCount)}}if(67108864&t.def.nodeFlags)for(var o=0;o<t.def.nodes.length;o++){var i=t.def.nodes[o];67108864&i.flags&&268435456&i.flags&&Tt(t,o).setDirty(),o+=i.childCount}}function on(t,e){var n=Tt(t,e.index);if(n.dirty){var r,o=void 0;if(33554432&e.flags){var i=e.parent.parent;o=sn(t,i.index,i.index+i.childCount,e.query,[]),r=Pt(t,e.parent.index).instance}else 67108864&e.flags&&(o=sn(t,0,t.def.nodes.length-1,e.query,[]),r=t.component);n.reset(o);for(var s=e.query.bindings,a=!1,u=0;u<s.length;u++){var c=s[u],l=void 0;switch(c.bindingType){case 0:l=n.first;break;case 1:l=n,a=!0}r[c.propName]=l}a&&n.notifyOnChanges()}}function sn(t,e,n,r,o){for(var i=e;i<=n;i++){var s=t.def.nodes[i],a=s.matchedQueries[r.id];if(null!=a&&o.push(an(t,s,a)),1&s.flags&&s.element.template&&(s.element.template.nodeMatchedQueries&r.filterId)===r.filterId){var u=St(t,i);if(8388608&s.flags)for(var c=u.viewContainer._embeddedViews,l=0;l<c.length;l++){var p=c[l],f=zt(p);f&&f===u&&sn(p,0,p.def.nodes.length-1,r,o)}var h=u.template._projectedViews;if(h)for(var l=0;l<h.length;l++){var d=h[l];sn(d,0,d.def.nodes.length-1,r,o)}}(s.childMatchedQueries&r.filterId)!==r.filterId&&(i+=s.childCount)}return o}function an(t,e,n){if(null!=n){var r=void 0;switch(n){case 1:r=St(t,e.index).renderElement;break;case 0:r=new ui(St(t,e.index).renderElement);break;case 2:r=St(t,e.index).template;break;case 3:r=St(t,e.index).viewContainer;break;case 4:r=Pt(t,e.index).instance}return r}}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function un(t,e){for(var n=new Array(e.length-1),r=1;r<e.length;r++)n[r-1]={flags:8,name:null,ns:null,nonMinifiedName:null,securityContext:null,suffix:e[r]};return{index:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:2,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:t,childCount:0,bindings:n,bindingFlags:ae(n),outputs:[],element:null,provider:null,text:{prefix:e[0]},query:null,ngContent:null}}function cn(t,e,n){var r,o=t.renderer;r=o.createText(n.text.prefix);var i=$t(t,e,n);return i&&o.appendChild(i,r),{renderText:r}}function ln(t,e,n,r,o,i,s,a,u,c,l,p){var f=!1,h=e.bindings,d=h.length;if(d>0&&Lt(t,e,0,n)&&(f=!0),d>1&&Lt(t,e,1,r)&&(f=!0),d>2&&Lt(t,e,2,o)&&(f=!0),d>3&&Lt(t,e,3,i)&&(f=!0),d>4&&Lt(t,e,4,s)&&(f=!0),d>5&&Lt(t,e,5,a)&&(f=!0),d>6&&Lt(t,e,6,u)&&(f=!0),d>7&&Lt(t,e,7,c)&&(f=!0),d>8&&Lt(t,e,8,l)&&(f=!0),d>9&&Lt(t,e,9,p)&&(f=!0),f){var y=e.text.prefix;d>0&&(y+=fn(n,h[0])),d>1&&(y+=fn(r,h[1])),d>2&&(y+=fn(o,h[2])),d>3&&(y+=fn(i,h[3])),d>4&&(y+=fn(s,h[4])),d>5&&(y+=fn(a,h[5])),d>6&&(y+=fn(u,h[6])),d>7&&(y+=fn(c,h[7])),d>8&&(y+=fn(l,h[8])),d>9&&(y+=fn(p,h[9]));var m=xt(t,e.index).renderText;t.renderer.setValue(m,y)}return f}function pn(t,e,n){for(var r=e.bindings,o=!1,i=0;i<n.length;i++)Lt(t,e,i,n[i])&&(o=!0);if(o){for(var s="",i=0;i<n.length;i++)s+=fn(n[i],r[i]);s=e.text.prefix+s;var a=xt(t,e.index).renderText;t.renderer.setValue(a,s)}return o}function fn(t,e){return(null!=t?t.toString():"")+e.suffix}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function hn(t,e,n,r){for(var o=0,i=0,s=0,a=0,u=0,c=null,l=!1,p=!1,f=null,h=0;h<e.length;h++){for(;c&&h>c.index+c.childCount;){var d=c.parent;d&&(d.childFlags|=c.childFlags,d.childMatchedQueries|=c.childMatchedQueries),c=d}var y=e[h];y.index=h,y.parent=c,y.bindingIndex=o,y.outputIndex=i;var m=void 0;if(m=c&&1&c.flags&&!c.element.name?c.renderParent:c,y.renderParent=m,y.element){var g=y.element;g.publicProviders=c?c.element.publicProviders:Object.create(null),g.allProviders=g.publicProviders,l=!1,p=!1}if(dn(c,y,e.length),s|=y.flags,u|=y.matchedQueryIds,y.element&&y.element.template&&(u|=y.element.template.nodeMatchedQueries),c?(c.childFlags|=y.flags,c.directChildFlags|=y.flags,c.childMatchedQueries|=y.matchedQueryIds,y.element&&y.element.template&&(c.childMatchedQueries|=y.element.template.nodeMatchedQueries)):a|=y.flags,o+=y.bindings.length,i+=y.outputs.length,!m&&3&y.flags&&(f=y),10112&y.flags){l||(l=!0,c.element.publicProviders=Object.create(c.element.publicProviders),c.element.allProviders=c.element.publicProviders);var v=0!=(4096&y.flags),_=0!=(16384&y.flags);!v||_?c.element.publicProviders[y.provider.tokenKey]=y:(p||(p=!0,c.element.allProviders=Object.create(c.element.publicProviders)),c.element.allProviders[y.provider.tokenKey]=y),_&&(c.element.componentProvider=y)}y.childCount&&(c=y)}for(;c;){var d=c.parent;d&&(d.childFlags|=c.childFlags,d.childMatchedQueries|=c.childMatchedQueries),c=d}var b=function(t,n,r,o){return e[n].element.handleEvent(t,r,o)};return{factory:null,nodeFlags:s,rootNodeFlags:a,nodeMatchedQueries:u,flags:t,nodes:e,updateDirectives:n||Wi,updateRenderer:r||Wi,handleEvent:b||Wi,bindingCount:o,outputCount:i,lastRenderRootNode:f}}function dn(t,e,n){var r=e.element&&e.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&8388608&r.lastRenderRootNode.flags)throw new Error("Illegal State: Last root node of a template can't have embedded views, at index "+e.index+"!")}if(10112&e.flags){if(0==(1&(t?t.flags:0)))throw new Error("Illegal State: Provider/Directive nodes need to be children of elements or anchors, at index "+e.index+"!")}if(e.query){if(33554432&e.flags&&(!t||0==(8192&t.flags)))throw new Error("Illegal State: Content Query nodes need to be children of directives, at index "+e.index+"!");if(67108864&e.flags&&t)throw new Error("Illegal State: View Query nodes have to be top level nodes, at index "+e.index+"!")}if(e.childCount){var o=t?t.index+t.childCount:n-1;if(e.index<=o&&e.index+e.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.index+"!")}}function yn(t,e,n){var r=gn(t.root,t.renderer,t,e,e.element.template);return vn(r,t.component,n),_n(r),r}function mn(t,e,n){var r=gn(t,t.renderer,null,null,e);return vn(r,n,n),_n(r),r}function gn(t,e,n,r,o){var i=new Array(o.nodes.length),s=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:3,root:t,renderer:e,oldValues:new Array(o.bindingCount),disposables:s}}function vn(t,e,n){t.component=e,t.context=n}function _n(t){var e;if(Kt(t)){var n=t.parentNodeDef;e=St(t.parent,n.parent.index).renderElement}for(var r=t.def,o=t.nodes,i=0;i<r.nodes.length;i++){var s=r.nodes[i];Zi.setCurrentNode(t,i);var a=void 0;switch(100673535&s.flags){case 1:var u=le(t,e,s),c=void 0;if(16777216&s.flags){var l=Yt(s.element.componentView),p=s.element.componentRendererType,f=void 0;f=p?t.root.rendererFactory.createRenderer(u,p):t.root.renderer,c=gn(t.root,f,t,s.element.componentProvider,l)}pe(t,c,s,u),a={renderElement:u,componentView:c,viewContainer:null,template:s.element.template?Ve(t,s):void 0},8388608&s.flags&&(a.viewContainer=Te(t,s,a));break;case 2:a=cn(t,e,s);break;case 256:case 512:case 1024:case 128:var h=Fe(t,s);a={instance:h};break;case 8:var h=He(t,s);a={instance:h};break;case 8192:var h=Le(t,s);if(a={instance:h},16384&s.flags){vn(St(t,s.parent.index).componentView,h,h)}break;case 16:case 32:case 64:a=Ye(t,s);break;case 33554432:case 67108864:a=nn();break;case 4:be(t,e,s),a=void 0}o[i]=a}Vn(t,gs.CreateViewNodes),jn(t,100663296,134217728,0)}function bn(t){Zi.updateDirectives(t,1),Mn(t,gs.CheckNoChanges),Zi.updateRenderer(t,1),Vn(t,gs.CheckNoChanges)}function wn(t){Zi.updateDirectives(t,0),Mn(t,gs.CheckAndUpdate),jn(t,33554432,268435456,0),Qe(t,1048576|(1&t.state?524288:0)),Zi.updateRenderer(t,0),Vn(t,gs.CheckAndUpdate),jn(t,67108864,268435456,0),Qe(t,4194304|(1&t.state?2097152:0)),2&t.def.flags&&(t.state&=-3),t.state&=-2}function Cn(t,e,n,r,o,i,s,a,u,c,l,p,f){return 0===n?En(t,e,r,o,i,s,a,u,c,l,p,f):On(t,e,r)}function En(t,e,n,r,o,i,s,a,u,c,l,p){var f=!1;switch(100673535&e.flags){case 1:f=he(t,e,n,r,o,i,s,a,u,c,l,p);break;case 2:f=ln(t,e,n,r,o,i,s,a,u,c,l,p);break;case 8192:f=Be(t,e,n,r,o,i,s,a,u,c,l,p);break;case 16:case 32:case 64:f=tn(t,e,n,r,o,i,s,a,u,c,l,p)}return f}function On(t,e,n){var r=!1;switch(100673535&e.flags){case 1:r=de(t,e,n);break;case 2:r=pn(t,e,n);break;case 8192:r=Ge(t,e,n);break;case 16:case 32:case 64:r=en(t,e,n)}if(r)for(var o=e.bindings.length,i=e.bindingIndex,s=t.oldValues,a=0;a<o;a++)s[i+a]=n[a];return r}function xn(t,e,n,r,o,i,s,a,u,c,l,p,f){return 0===n?Sn(t,e,r,o,i,s,a,u,c,l,p,f):Pn(t,e,r),!1}function Sn(t,e,n,r,o,i,s,a,u,c,l,p){var f=e.bindings.length;f>0&&Ut(t,e,0,n),f>1&&Ut(t,e,1,r),f>2&&Ut(t,e,2,o),f>3&&Ut(t,e,3,i),f>4&&Ut(t,e,4,s),f>5&&Ut(t,e,5,a),f>6&&Ut(t,e,6,u),f>7&&Ut(t,e,7,c),f>8&&Ut(t,e,8,l),f>9&&Ut(t,e,9,p)}function Pn(t,e,n){for(var r=0;r<n.length;r++)Ut(t,e,r,n[r])}function An(t,e){if(Tt(t,e.index).dirty)throw kt(Zi.createDebugContext(t,e.index),"Query "+e.query.id+" not dirty","Query "+e.query.id+" dirty",0!=(1&t.state))}function Tn(t){if(!(8&t.state)){if(Mn(t,gs.Destroy),Vn(t,gs.Destroy),Qe(t,65536),t.disposables)for(var e=0;e<t.disposables.length;e++)t.disposables[e]();t.renderer.destroyNode&&kn(t),Kt(t)&&t.renderer.destroy(),t.state|=8}}function kn(t){for(var e=t.def.nodes.length,n=0;n<e;n++){var r=t.def.nodes[n];1&r.flags?t.renderer.destroyNode(St(t,n).renderElement):2&r.flags&&t.renderer.destroyNode(xt(t,n).renderText)}}function Vn(t,e){var n=t.def;if(16777216&n.nodeFlags)for(var r=0;r<n.nodes.length;r++){var o=n.nodes[r];16777216&o.flags?Nn(St(t,r).componentView,e):0==(16777216&o.childFlags)&&(r+=o.childCount)}}function Mn(t,e){var n=t.def;if(8388608&n.nodeFlags)for(var r=0;r<n.nodes.length;r++){var o=n.nodes[r];if(8388608&o.flags)for(var i=St(t,r).viewContainer._embeddedViews,s=0;s<i.length;s++)Nn(i[s],e);else 0==(8388608&o.childFlags)&&(r+=o.childCount)}}function Nn(t,e){var n=t.state;switch(e){case gs.CheckNoChanges:2&n&&0==(12&n)&&bn(t);break;case gs.CheckAndUpdate:2&n&&0==(12&n)&&wn(t);break;case gs.Destroy:Tn(t);break;case gs.CreateViewNodes:_n(t)}}function jn(t,e,n,r){if(t.def.nodeFlags&e&&t.def.nodeFlags&n)for(var o=t.def.nodes.length,i=0;i<o;i++){var s=t.def.nodes[i];if(s.flags&e&&s.flags&n)switch(Zi.setCurrentNode(t,s.index),r){case 0:on(t,s);break;case 1:An(t,s)}s.childFlags&e&&s.childFlags&n||(i+=s.childCount)}}function Rn(){if(!vs){vs=!0;var t=rt()?In():Dn();Zi.setCurrentNode=t.setCurrentNode,Zi.createRootView=t.createRootView,Zi.createEmbeddedView=t.createEmbeddedView,Zi.checkAndUpdateView=t.checkAndUpdateView,Zi.checkNoChangesView=t.checkNoChangesView,Zi.destroyView=t.destroyView,Zi.resolveDep=We,Zi.createDebugContext=t.createDebugContext,Zi.handleEvent=t.handleEvent,Zi.updateDirectives=t.updateDirectives,Zi.updateRenderer=t.updateRenderer,Zi.dirtyParentQueries=rn}}function Dn(){return{setCurrentNode:function(){},createRootView:Fn,createEmbeddedView:yn,checkAndUpdateView:wn,checkNoChangesView:bn,destroyView:Tn,createDebugContext:function(t,e){return new Os(t,e)},handleEvent:function(t,e,n,r){return t.def.handleEvent(t,e,n,r)},updateDirectives:function(t,e){return t.def.updateDirectives(0===e?Un:Bn,t)},updateRenderer:function(t,e){return t.def.updateRenderer(0===e?Un:Bn,t)}}}function In(){return{setCurrentNode:Wn,createRootView:Hn,createEmbeddedView:Gn,checkAndUpdateView:zn,checkNoChangesView:qn,destroyView:Zn,createDebugContext:function(t,e){return new Os(t,e)},handleEvent:Kn,updateDirectives:Xn,updateRenderer:Qn}}function Fn(t,e,n,r,o,i){return mn(Ln(t,o,o.injector.get(ii),e,n),r,i)}function Hn(t,e,n,r,o,i){var s=o.injector.get(ii),a=Ln(t,o,new xs(s),e,n);return ar(_s.create,mn,null,[a,r,i])}function Ln(t,e,n,r,o){return{ngModule:e,injector:t,projectableNodes:r,selectorOrNode:o,sanitizer:e.injector.get(qi),rendererFactory:n,renderer:n.createRenderer(null,null)}}function Un(t,e,n,r,o,i,s,a,u,c,l,p,f){var h=t.def.nodes[e];return Cn(t,h,n,r,o,i,s,a,u,c,l,p,f),112&h.flags?At(t,e).value:void 0}function Bn(t,e,n,r,o,i,s,a,u,c,l,p,f){var h=t.def.nodes[e];return xn(t,h,n,r,o,i,s,a,u,c,l,p,f),112&h.flags?At(t,e).value:void 0}function Gn(t,e,n){return ar(_s.create,yn,null,[t,e,n])}function zn(t){return ar(_s.detectChanges,wn,null,[t])}function qn(t){return ar(_s.checkNoChanges,bn,null,[t])}function Zn(t){return ar(_s.destroy,Tn,null,[t])}function Wn(t,e){ws=t,Cs=e}function Kn(t,e,n,r){return Wn(t,e),ar(_s.handleEvent,t.def.handleEvent,null,[t,e,n,r])}function Xn(t,e){function n(t,n,r){for(var o=[],i=3;i<arguments.length;i++)o[i-3]=arguments[i];var s=t.def.nodes[n];return 0===e?Jn(t,s,r,o):$n(t,s,r,o),8192&s.flags&&Wn(t,nr(t,n)),112&s.flags?At(t,s.index).value:void 0}if(8&t.state)throw Rt(_s[bs]);return Wn(t,nr(t,0)),t.def.updateDirectives(n,t)}function Qn(t,e){function n(t,n,r){for(var o=[],i=3;i<arguments.length;i++)o[i-3]=arguments[i];var s=t.def.nodes[n];return 0===e?Jn(t,s,r,o):$n(t,s,r,o),3&s.flags&&Wn(t,rr(t,n)),112&s.flags?At(t,s.index).value:void 0}if(8&t.state)throw Rt(_s[bs]);return Wn(t,rr(t,0)),t.def.updateRenderer(n,t)}function Jn(t,e,n,r){if(Cn.apply(void 0,[t,e,n].concat(r))){var o=1===n?r[0]:r;if(8192&e.flags){for(var i={},s=0;s<e.bindings.length;s++){var a=e.bindings[s],u=o[s];8&a.flags&&(i[Yn(a.nonMinifiedName)]=er(u))}var c=e.parent,l=St(t,c.index).renderElement;if(c.element.name)for(var p in i){var u=i[p];null!=u?t.renderer.setAttribute(l,p,u):t.renderer.removeAttribute(l,p)}else t.renderer.setValue(l,"bindings="+JSON.stringify(i,null,2))}}}function $n(t,e,n,r){xn.apply(void 0,[t,e,n].concat(r))}function Yn(t){return"ng-reflect-"+(t=tr(t.replace(/[$@]/g,"_")))}function tr(t){return t.replace(Es,function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return"-"+t[1].toLowerCase()})}function er(t){try{return null!=t?t.toString().slice(0,30):t}catch(t){return"[ERROR] Exception while trying to serialize the value"}}function nr(t,e){for(var n=e;n<t.def.nodes.length;n++){var r=t.def.nodes[n];if(8192&r.flags&&r.bindings&&r.bindings.length)return n}return null}function rr(t,e){for(var n=e;n<t.def.nodes.length;n++){var r=t.def.nodes[n];if(3&r.flags&&r.bindings&&r.bindings.length)return n}return null}function or(t,e){for(var n=-1,r=0;r<=e;r++){3&t.nodes[r].flags&&n++}return n}function ir(t){for(;t&&!Kt(t);)t=t.parent;return t.parent?St(t.parent,qt(t).index):null}function sr(t,e,n){for(var r in e.references)n[r]=an(t,e,e.references[r])}function ar(t,e,n,r){var o=bs,i=ws,s=Cs;try{bs=t;var a=e.apply(n,r);return ws=i,Cs=s,bs=o,a}catch(t){if(jt(t)||!ws)throw t;throw ws.state|=4,Vt(t,ur())}}function ur(){return ws?new Os(ws,Cs):null}/**
+ * @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
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function cr(){return Fi}function lr(){return Hi}function pr(t){return t||"en-US"}function fr(){Rn()}var hr=n("rCTf"),dr=(n.n(hr),n("1KT0")),yr=(n.n(dr),n("+ayw")),mr=(n.n(yr),n("EEr4"));n.n(mr);n.d(e,"r",function(){return ni}),n.d(e,"a",function(){return nt}),n.d(e,"K",function(){return rt}),n.d(e,"O",function(){return it}),n.d(e,"k",function(){return Yo}),n.d(e,"s",function(){return _o}),n.d(e,"N",function(){return wo}),n.d(e,"M",function(){return Co}),n.d(e,"q",function(){return go}),n.d(e,"l",function(){return vo}),n.d(e,"G",function(){return dt}),n.d(e,"i",function(){return qo}),n.d(e,"F",function(){return et}),n.d(e,"c",function(){return Bi}),n.d(e,"o",function(){return Ps}),n.d(e,"R",function(){return Go}),n.d(e,"p",function(){return $r}),n.d(e,"v",function(){return qi}),n.d(e,"L",function(){return zi}),n.d(e,"_3",function(){return Pr}),n.d(e,"U",function(){return Vr}),n.d(e,"X",function(){return Nr}),n.d(e,"_13",function(){return jr}),n.d(e,"_7",function(){return Mr}),n.d(e,"A",function(){return Rr}),n.d(e,"I",function(){return Dr}),n.d(e,"B",function(){return Ir}),n.d(e,"_9",function(){return d}),n.d(e,"_10",function(){return Kr}),n.d(e,"D",function(){return _r}),n.d(e,"E",function(){return Hr}),n.d(e,"H",function(){return Lr}),n.d(e,"z",function(){return Ur}),n.d(e,"_12",function(){return Br}),n.d(e,"Q",function(){return Gr}),n.d(e,"_2",function(){return zr}),n.d(e,"h",function(){return zo}),n.d(e,"W",function(){return oi}),n.d(e,"w",function(){return ii}),n.d(e,"J",function(){return si}),n.d(e,"d",function(){return xo}),n.d(e,"Z",function(){return Vo}),n.d(e,"V",function(){return ui}),n.d(e,"y",function(){return Io}),n.d(e,"Y",function(){return Do}),n.d(e,"_1",function(){return yi}),n.d(e,"_0",function(){return mi}),n.d(e,"_8",function(){return gi}),n.d(e,"t",function(){return ji}),n.d(e,"u",function(){return Ri}),n.d(e,"_4",function(){return Ei}),n.d(e,"P",function(){return Ui}),n.d(e,"S",function(){return vt}),n.d(e,"n",function(){return Oo}),n.d(e,"C",function(){return Er}),n.d(e,"_11",function(){return i}),n.d(e,"T",function(){return s}),n.d(e,"_6",function(){return Z}),n.d(e,"_5",function(){return q}),n.d(e,"x",function(){return Ho}),n.d(e,"_18",function(){return ue}),n.d(e,"_22",function(){return Ae}),n.d(e,"_14",function(){return It}),n.d(e,"_19",function(){return Re}),n.d(e,"_16",function(){return ce}),n.d(e,"_20",function(){return Ne}),n.d(e,"_21",function(){return De}),n.d(e,"_17",function(){return un}),n.d(e,"_15",function(){return hn}),n.d(e,"j",function(){return fr}),n.d(e,"f",function(){return cr}),n.d(e,"g",function(){return lr}),n.d(e,"b",function(){return pr}),n.d(e,"m",function(){return ri}),n.d(e,"e",function(){return W});var gr=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},vr=function(){function t(t){this._desc=t}return t.prototype.toString=function(){return"Token "+this._desc},t}(),_r=function(t){function e(e){return t.call(this,e)||this}return gr(e,t),e.prototype.toString=function(){return"InjectionToken "+this._desc},e}(vr),br="undefined"!=typeof window&&window,wr="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,Cr=void 0!==t&&t,Er=br||Cr||wr,Or=null,xr=0,Sr=Er.Reflect,Pr=(new _r("AnalyzeForEntryComponents"),f("Attribute",[["attributeName",void 0]])),Ar=function(){function t(){}return t}(),Tr=(h("ContentChildren",[["selector",void 0],{first:!1,isViewQuery:!1,descendants:!1,read:void 0}],Ar),h("ContentChild",[["selector",void 0],{first:!0,isViewQuery:!1,descendants:!0,read:void 0}],Ar),h("ViewChildren",[["selector",void 0],{first:!1,isViewQuery:!0,descendants:!0,read:void 0}],Ar),h("ViewChild",[["selector",void 0],{first:!0,isViewQuery:!0,descendants:!0,read:void 0}],Ar),{});Tr.OnPush=0,Tr.Default=1,Tr[Tr.OnPush]="OnPush",Tr[Tr.Default]="Default";var kr={};kr.CheckOnce=0,kr.Checked=1,kr.CheckAlways=2,kr.Detached=3,kr.Errored=4,kr.Destroyed=5,kr[kr.CheckOnce]="CheckOnce",kr[kr.Checked]="Checked",kr[kr.CheckAlways]="CheckAlways",kr[kr.Detached]="Detached",kr[kr.Errored]="Errored",kr[kr.Destroyed]="Destroyed";/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Vr=l("Directive",{selector:void 0,inputs:void 0,outputs:void 0,host:void 0,providers:void 0,exportAs:void 0,queries:void 0}),Mr=(l("Component",{selector:void 0,inputs:void 0,outputs:void 0,host:void 0,exportAs:void 0,moduleId:void 0,providers:void 0,viewProviders:void 0,changeDetection:Tr.Default,queries:void 0,templateUrl:void 0,template:void 0,styleUrls:void 0,styles:void 0,animations:void 0,encapsulation:void 0,interpolation:void 0,entryComponents:void 0},Vr),l("Pipe",{name:void 0,pure:!0})),Nr=h("Input",[["bindingPropertyName",void 0]]),jr=h("Output",[["bindingPropertyName",void 0]]),Rr=(h("HostBinding",[["hostPropertyName",void 0]]),h("HostListener",[["eventName",void 0],["args",[]]]),l("NgModule",{providers:void 0,declarations:void 0,imports:void 0,exports:void 0,entryComponents:void 0,bootstrap:void 0,schemas:void 0,id:void 0})),Dr={};Dr.Emulated=0,Dr.Native=1,Dr.None=2,Dr[Dr.Emulated]="Emulated",Dr[Dr.Native]="Native",Dr[Dr.None]="None";var Ir=(function(){function t(t){var e=void 0===t?{}:t,n=e.templateUrl,r=e.template,o=e.encapsulation,i=e.styles,s=e.styleUrls,a=e.animations,u=e.interpolation;this.templateUrl=n,this.template=r,this.styleUrls=s,this.styles=i,this.encapsulation=o,this.animations=a,this.interpolation=u}}(),function(){function t(t){this.full=t}return Object.defineProperty(t.prototype,"major",{get:function(){return this.full.split(".")[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minor",{get:function(){return this.full.split(".")[1]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"patch",{get:function(){return this.full.split(".").slice(2).join(".")},enumerable:!0,configurable:!0}),t}()),Fr=new Ir("4.0.2"),Hr=f("Inject",[["token",void 0]]),Lr=f("Optional",[]),Ur=l("Injectable",[]),Br=f("Self",[]),Gr=f("SkipSelf",[]),zr=f("Host",[]),qr=new Object,Zr=qr,Wr=function(){function t(){}return t.prototype.get=function(t,e){if(void 0===e&&(e=qr),e===qr)throw new Error("No provider for "+s(t)+"!");return e},t}(),Kr=function(){function t(){}return t.prototype.get=function(t,e){},t.prototype.get=function(t,e){},t}();Kr.THROW_IF_NOT_FOUND=qr,Kr.NULL=new Wr;/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Xr="ngDebugContext",Qr="ngOriginalError",Jr="ngErrorLogger",$r=function(){function t(t){this._console=console}return t.prototype.handleError=function(t){var e=this._findOriginalError(t),n=this._findContext(t),r=v(t);r(this._console,"ERROR",t),e&&r(this._console,"ORIGINAL ERROR",e),n&&r(this._console,"ERROR CONTEXT",n)},t.prototype._findContext=function(t){return t?m(t)?m(t):this._findContext(g(t)):null},t.prototype._findOriginalError=function(t){for(var e=g(t);e&&g(e);)e=g(e);return e},t}(),Yr=function(){function t(t,e){if(this.token=t,this.id=e,!t)throw new Error("Token must be defined!")}return Object.defineProperty(t.prototype,"displayName",{get:function(){return s(this.token)},enumerable:!0,configurable:!0}),t.get=function(t){return eo.get(y(t))},Object.defineProperty(t,"numberOfKeys",{get:function(){return eo.numberOfKeys},enumerable:!0,configurable:!0}),t}(),to=function(){function t(){this._allKeys=new Map}return t.prototype.get=function(t){if(t instanceof Yr)return t;if(this._allKeys.has(t))return this._allKeys.get(t);var e=new Yr(t,Yr.numberOfKeys);return this._allKeys.set(t,e),e},Object.defineProperty(t.prototype,"numberOfKeys",{get:function(){return this._allKeys.size},enumerable:!0,configurable:!0}),t}(),eo=new to,no=Function,ro=/^function\s+\S+\(\)\s*{[\s\S]+\.apply\(this,\s*arguments\)/,oo=function(){function t(t){this._reflect=t||Er.Reflect}return t.prototype.isReflectionEnabled=function(){return!0},t.prototype.factory=function(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return new(t.bind.apply(t,[void 0].concat(e)))}},t.prototype._zipTypesAndAnnotations=function(t,e){var n;n=void 0===t?new Array(e.length):new Array(t.length);for(var r=0;r<n.length;r++)void 0===t?n[r]=[]:t[r]!=Object?n[r]=[t[r]]:n[r]=[],e&&null!=e[r]&&(n[r]=n[r].concat(e[r]));return n},t.prototype._ownParameters=function(t,e){if(ro.exec(t.toString()))return null;if(t.parameters&&t.parameters!==e.parameters)return t.parameters;var n=t.ctorParameters;if(n&&n!==e.ctorParameters){var r="function"==typeof n?n():n,o=r.map(function(t){return t&&t.type}),i=r.map(function(t){return t&&N(t.decorators)});return this._zipTypesAndAnnotations(o,i)}if(null!=this._reflect&&null!=this._reflect.getOwnMetadata){var i=this._reflect.getOwnMetadata("parameters",t),o=this._reflect.getOwnMetadata("design:paramtypes",t);if(o||i)return this._zipTypesAndAnnotations(o,i)}return new Array(t.length).fill(void 0)},t.prototype.parameters=function(t){if(!M(t))return[];var e=j(t),n=this._ownParameters(t,e);return n||e===Object||(n=this.parameters(e)),n||[]},t.prototype._ownAnnotations=function(t,e){if(t.annotations&&t.annotations!==e.annotations){var n=t.annotations;return"function"==typeof n&&n.annotations&&(n=n.annotations),n}return t.decorators&&t.decorators!==e.decorators?N(t.decorators):this._reflect&&this._reflect.getOwnMetadata?this._reflect.getOwnMetadata("annotations",t):null},t.prototype.annotations=function(t){if(!M(t))return[];var e=j(t),n=this._ownAnnotations(t,e)||[];return(e!==Object?this.annotations(e):[]).concat(n)},t.prototype._ownPropMetadata=function(t,e){if(t.propMetadata&&t.propMetadata!==e.propMetadata){var n=t.propMetadata;return"function"==typeof n&&n.propMetadata&&(n=n.propMetadata),n}if(t.propDecorators&&t.propDecorators!==e.propDecorators){var r=t.propDecorators,o={};return Object.keys(r).forEach(function(t){o[t]=N(r[t])}),o}return this._reflect&&this._reflect.getOwnMetadata?this._reflect.getOwnMetadata("propMetadata",t):null},t.prototype.propMetadata=function(t){if(!M(t))return{};var e=j(t),n={};if(e!==Object){var r=this.propMetadata(e);Object.keys(r).forEach(function(t){n[t]=r[t]})}var o=this._ownPropMetadata(t,e);return o&&Object.keys(o).forEach(function(t){var e=[];n.hasOwnProperty(t)&&e.push.apply(e,n[t]),e.push.apply(e,o[t]),n[t]=e}),n},t.prototype.hasLifecycleHook=function(t,e){return t instanceof no&&e in t.prototype},t.prototype.getter=function(t){return new Function("o","return o."+t+";")},t.prototype.setter=function(t){return new Function("o","v","return o."+t+" = v;")},t.prototype.method=function(t){var e="if (!o."+t+") throw new Error('\""+t+"\" is undefined');\n        return o."+t+".apply(o, args);";return new Function("o","args",e)},t.prototype.importUri=function(t){return"object"==typeof t&&t.filePath?t.filePath:"./"+s(t)},t.prototype.resourceUri=function(t){return"./"+s(t)},t.prototype.resolveIdentifier=function(t,e,n,r){return r},t.prototype.resolveEnum=function(t,e){return t[e]},t}(),io=function(){function t(){}return t.prototype.parameters=function(t){},t.prototype.annotations=function(t){},t.prototype.propMetadata=function(t){},t.prototype.importUri=function(t){},t.prototype.resourceUri=function(t){},t.prototype.resolveIdentifier=function(t,e,n,r){},t.prototype.resolveEnum=function(t,e){},t}(),so=function(t){function e(e){var n=t.call(this)||this;return n.reflectionCapabilities=e,n}return gr(e,t),e.prototype.updateCapabilities=function(t){this.reflectionCapabilities=t},e.prototype.factory=function(t){return this.reflectionCapabilities.factory(t)},e.prototype.parameters=function(t){return this.reflectionCapabilities.parameters(t)},e.prototype.annotations=function(t){return this.reflectionCapabilities.annotations(t)},e.prototype.propMetadata=function(t){return this.reflectionCapabilities.propMetadata(t)},e.prototype.hasLifecycleHook=function(t,e){return this.reflectionCapabilities.hasLifecycleHook(t,e)},e.prototype.getter=function(t){return this.reflectionCapabilities.getter(t)},e.prototype.setter=function(t){return this.reflectionCapabilities.setter(t)},e.prototype.method=function(t){return this.reflectionCapabilities.method(t)},e.prototype.importUri=function(t){return this.reflectionCapabilities.importUri(t)},e.prototype.resourceUri=function(t){return this.reflectionCapabilities.resourceUri(t)},e.prototype.resolveIdentifier=function(t,e,n,r){return this.reflectionCapabilities.resolveIdentifier(t,e,n,r)},e.prototype.resolveEnum=function(t,e){return this.reflectionCapabilities.resolveEnum(t,e)},e}(io),ao=new so(new oo),uo=function(){function t(t,e,n){this.key=t,this.optional=e,this.visibility=n}return t.fromKey=function(e){return new t(e,!1,null)},t}(),co=[],lo=function(){function t(t,e,n){this.key=t,this.resolvedFactories=e,this.multiProvider=n}return Object.defineProperty(t.prototype,"resolvedFactory",{get:function(){return this.resolvedFactories[0]},enumerable:!0,configurable:!0}),t}(),po=function(){function t(t,e){this.factory=t,this.dependencies=e}return t}(),fo=new Object,ho=function(){function t(){}return t.resolve=function(t){return I(t)},t.resolveAndCreate=function(e,n){var r=t.resolve(e);return t.fromResolvedProviders(r,n)},t.fromResolvedProviders=function(t,e){return new yo(t,e)},t.prototype.parent=function(){},t.prototype.resolveAndCreateChild=function(t){},t.prototype.createChildFromResolved=function(t){},t.prototype.resolveAndInstantiate=function(t){},t.prototype.instantiateResolved=function(t){},t.prototype.get=function(t,e){},t}(),yo=function(){function t(t,e){this._constructionCounter=0,this._providers=t,this._parent=e||null;var n=t.length;this.keyIds=new Array(n),this.objs=new Array(n);for(var r=0;r<n;r++)this.keyIds[r]=t[r].key.id,this.objs[r]=fo}return t.prototype.get=function(t,e){return void 0===e&&(e=Zr),this._getByKey(Yr.get(t),null,e)},Object.defineProperty(t.prototype,"parent",{get:function(){return this._parent},enumerable:!0,configurable:!0}),t.prototype.resolveAndCreateChild=function(t){var e=ho.resolve(t);return this.createChildFromResolved(e)},t.prototype.createChildFromResolved=function(e){var n=new t(e);return n._parent=this,n},t.prototype.resolveAndInstantiate=function(t){return this.instantiateResolved(ho.resolve([t])[0])},t.prototype.instantiateResolved=function(t){return this._instantiateProvider(t)},t.prototype.getProviderAtIndex=function(t){if(t<0||t>=this._providers.length)throw k(t);return this._providers[t]},t.prototype._new=function(t){if(this._constructionCounter++>this._getMaxNumberOfObjects())throw S(this,t.key);return this._instantiateProvider(t)},t.prototype._getMaxNumberOfObjects=function(){return this.objs.length},t.prototype._instantiateProvider=function(t){if(t.multiProvider){for(var e=new Array(t.resolvedFactories.length),n=0;n<t.resolvedFactories.length;++n)e[n]=this._instantiate(t,t.resolvedFactories[n]);return e}return this._instantiate(t,t.resolvedFactories[0])},t.prototype._instantiate=function(t,e){var n,r=this,o=e.factory;try{n=e.dependencies.map(function(t){return r._getByReflectiveDependency(t)})}catch(e){throw e.addKey&&e.addKey(this,t.key),e}var i;try{i=o.apply(void 0,n)}catch(e){throw P(this,e,e.stack,t.key)}return i},t.prototype._getByReflectiveDependency=function(t){return this._getByKey(t.key,t.visibility,t.optional?null:Zr)},t.prototype._getByKey=function(t,e,n){return t===mo?this:e instanceof Br?this._getByKeySelf(t,n):this._getByKeyDefault(t,n,e)},t.prototype._getObjByKeyId=function(t){for(var e=0;e<this.keyIds.length;e++)if(this.keyIds[e]===t)return this.objs[e]===fo&&(this.objs[e]=this._new(this._providers[e])),this.objs[e];return fo},t.prototype._throwOrNull=function(t,e){if(e!==Zr)return e;throw x(this,t)},t.prototype._getByKeySelf=function(t,e){var n=this._getObjByKeyId(t.id);return n!==fo?n:this._throwOrNull(t,e)},t.prototype._getByKeyDefault=function(e,n,r){var o;for(o=r instanceof Gr?this._parent:this;o instanceof t;){var i=o,s=i._getObjByKeyId(e.id);if(s!==fo)return s;o=i._parent}return null!==o?o.get(e.token,n):this._throwOrNull(e,n)},Object.defineProperty(t.prototype,"displayName",{get:function(){return"ReflectiveInjector(providers: ["+z(this,function(t){return' "'+t.key.displayName+'" '}).join(", ")+"])"},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.displayName},t}(),mo=Yr.get(Kr),go=new _r("Application Initializer"),vo=function(){function t(t){var e=this;this._done=!1;var n=[];if(t)for(var r=0;r<t.length;r++){var o=t[r]();q(o)&&n.push(o)}this._donePromise=Promise.all(n).then(function(){e._done=!0}),0===n.length&&(this._done=!0)}return Object.defineProperty(t.prototype,"done",{get:function(){return this._done},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"donePromise",{get:function(){return this._donePromise},enumerable:!0,configurable:!0}),t}();vo.decorators=[{type:Ur}],vo.ctorParameters=function(){return[{type:Array,decorators:[{type:Hr,args:[go]},{type:Lr}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var _o=new _r("AppId"),bo={provide:_o,useFactory:W,deps:[]},wo=new _r("Platform Initializer"),Co=new _r("Platform ID"),Eo=new _r("appBootstrapListener"),Oo=(new _r("Application Packages Root URL"),function(){function t(){}return t.prototype.log=function(t){console.log(t)},t.prototype.warn=function(t){console.warn(t)},t}());Oo.decorators=[{type:Ur}],Oo.ctorParameters=function(){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
+ */
+var xo=(function(){function t(t,e){this.ngModuleFactory=t,this.componentFactories=e}}(),function(){function t(){}return t.prototype.compileModuleSync=function(t){throw X()},t.prototype.compileModuleAsync=function(t){throw X()},t.prototype.compileModuleAndAllComponentsSync=function(t){throw X()},t.prototype.compileModuleAndAllComponentsAsync=function(t){throw X()},t.prototype.getNgContentSelectors=function(t){throw X()},t.prototype.clearCache=function(){},t.prototype.clearCacheFor=function(t){},t}());xo.decorators=[{type:Ur}],xo.ctorParameters=function(){return[]};var So=(new _r("compilerOptions"),function(){function t(){}return t.prototype.createCompiler=function(t){},t}()),Po=function(){function t(){}return t.prototype.location=function(){},t.prototype.injector=function(){},t.prototype.instance=function(){},t.prototype.hostView=function(){},t.prototype.changeDetectorRef=function(){},t.prototype.componentType=function(){},t.prototype.destroy=function(){},t.prototype.onDestroy=function(t){},t}(),Ao=function(){function t(){}return t.prototype.selector=function(){},t.prototype.componentType=function(){},t.prototype.ngContentSelectors=function(){},t.prototype.inputs=function(){},t.prototype.outputs=function(){},t.prototype.create=function(t,e,n,r){},t}(),To="ngComponent",ko=function(){function t(){}return t.prototype.resolveComponentFactory=function(t){throw Q(t)},t}(),Vo=function(){function t(){}return t.prototype.resolveComponentFactory=function(t){},t}();Vo.NULL=new ko;var Mo,No,jo=function(){function t(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(var r=0;r<t.length;r++){var o=t[r];this._factories.set(o.componentType,o)}}return t.prototype.resolveComponentFactory=function(t){var e=this._factories.get(t)||this._parent.resolveComponentFactory(t);return new Ro(e,this._ngModule)},t}(),Ro=function(t){function e(e,n){var r=t.call(this)||this;return r.factory=e,r.ngModule=n,r}return gr(e,t),Object.defineProperty(e.prototype,"selector",{get:function(){return this.factory.selector},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"componentType",{get:function(){return this.factory.componentType},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ngContentSelectors",{get:function(){return this.factory.ngContentSelectors},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"inputs",{get:function(){return this.factory.inputs},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){return this.factory.outputs},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){return this.factory.create(t,e,n,r||this.ngModule)},e}(Ao),Do=function(){function t(){}return t.prototype.injector=function(){},t.prototype.componentFactoryResolver=function(){},t.prototype.instance=function(){},t.prototype.destroy=function(){},t.prototype.onDestroy=function(t){},t}(),Io=function(){function t(t,e){this._injectorClass=t,this._moduleType=e}return Object.defineProperty(t.prototype,"moduleType",{get:function(){return this._moduleType},enumerable:!0,configurable:!0}),t.prototype.create=function(t){var e=new this._injectorClass(t||Kr.NULL);return e.create(),e},t}(),Fo=new Object,Ho=function(){function t(t,e,n){var r=this;this.parent=t,this._destroyListeners=[],this._destroyed=!1,this.bootstrapFactories=n.map(function(t){return new Ro(t,r)}),this._cmpFactoryResolver=new jo(e,t.get(Vo,Vo.NULL),this)}return t.prototype.create=function(){this.instance=this.createInternal()},t.prototype.createInternal=function(){},t.prototype.get=function(t,e){if(void 0===e&&(e=Zr),t===Kr||t===Do)return this;if(t===Vo)return this._cmpFactoryResolver;var n=this.getInternal(t,Fo);return n===Fo?this.parent.get(t,e):n},t.prototype.getInternal=function(t,e){},Object.defineProperty(t.prototype,"injector",{get:function(){return this},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentFactoryResolver",{get:function(){return this._cmpFactoryResolver},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){if(this._destroyed)throw new Error("The ng module "+s(this.instance.constructor)+" has already been destroyed.");this._destroyed=!0,this.destroyInternal(),this._destroyListeners.forEach(function(t){return t()})},t.prototype.onDestroy=function(t){this._destroyListeners.push(t)},t.prototype.destroyInternal=function(){},t}(),Lo=J(),Uo=Lo?$:function(t,e){return tt},Bo=Lo?Y:function(t,e){return e},Go=function(t){function e(e){void 0===e&&(e=!1);var n=t.call(this)||this;return n.__isAsync=e,n}return gr(e,t),e.prototype.emit=function(e){t.prototype.next.call(this,e)},e.prototype.subscribe=function(e,n,r){var o,i=function(t){return null},s=function(){return null};return e&&"object"==typeof e?(o=this.__isAsync?function(t){setTimeout(function(){return e.next(t)})}:function(t){e.next(t)},e.error&&(i=this.__isAsync?function(t){setTimeout(function(){return e.error(t)})}:function(t){e.error(t)}),e.complete&&(s=this.__isAsync?function(){setTimeout(function(){return e.complete()})}:function(){e.complete()})):(o=this.__isAsync?function(t){setTimeout(function(){return e(t)})}:function(t){e(t)},n&&(i=this.__isAsync?function(t){setTimeout(function(){return n(t)})}:function(t){n(t)}),r&&(s=this.__isAsync?function(){setTimeout(function(){return r()})}:function(){r()})),t.prototype.subscribe.call(this,o,i,s)},e}(mr.Subject),zo=function(){function t(t){var e=t.enableLongStackTrace,n=void 0!==e&&e;if(this._hasPendingMicrotasks=!1,this._hasPendingMacrotasks=!1,this._isStable=!0,this._nesting=0,this._onUnstable=new Go(!1),this._onMicrotaskEmpty=new Go(!1),this._onStable=new Go(!1),this._onErrorEvents=new Go(!1),"undefined"==typeof Zone)throw new Error("Angular requires Zone.js prolyfill.");Zone.assertZonePatched(),this.outer=this.inner=Zone.current,Zone.wtfZoneSpec&&(this.inner=this.inner.fork(Zone.wtfZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(this.inner=this.inner.fork(Zone.longStackTraceZoneSpec)),this.forkInnerZoneWithAngularBehavior()}return t.isInAngularZone=function(){return!0===Zone.current.get("isAngularZone")},t.assertInAngularZone=function(){if(!t.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")},t.assertNotInAngularZone=function(){if(t.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")},t.prototype.run=function(t){return this.inner.run(t)},t.prototype.runGuarded=function(t){return this.inner.runGuarded(t)},t.prototype.runOutsideAngular=function(t){return this.outer.run(t)},Object.defineProperty(t.prototype,"onUnstable",{get:function(){return this._onUnstable},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"onMicrotaskEmpty",{get:function(){return this._onMicrotaskEmpty},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"onStable",{get:function(){return this._onStable},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"onError",{get:function(){return this._onErrorEvents},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isStable",{get:function(){return this._isStable},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasPendingMicrotasks",{get:function(){return this._hasPendingMicrotasks},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasPendingMacrotasks",{get:function(){return this._hasPendingMacrotasks},enumerable:!0,configurable:!0}),t.prototype.checkStable=function(){var t=this;if(0==this._nesting&&!this._hasPendingMicrotasks&&!this._isStable)try{this._nesting++,this._onMicrotaskEmpty.emit(null)}finally{if(this._nesting--,!this._hasPendingMicrotasks)try{this.runOutsideAngular(function(){return t._onStable.emit(null)})}finally{this._isStable=!0}}},t.prototype.forkInnerZoneWithAngularBehavior=function(){var t=this;this.inner=this.inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:function(e,n,r,o,i,s){try{return t.onEnter(),e.invokeTask(r,o,i,s)}finally{t.onLeave()}},onInvoke:function(e,n,r,o,i,s,a){try{return t.onEnter(),e.invoke(r,o,i,s,a)}finally{t.onLeave()}},onHasTask:function(e,n,r,o){e.hasTask(r,o),n===r&&("microTask"==o.change?t.setHasMicrotask(o.microTask):"macroTask"==o.change&&t.setHasMacrotask(o.macroTask))},onHandleError:function(e,n,r,o){return e.handleError(r,o),t.triggerError(o),!1}})},t.prototype.onEnter=function(){this._nesting++,this._isStable&&(this._isStable=!1,this._onUnstable.emit(null))},t.prototype.onLeave=function(){this._nesting--,this.checkStable()},t.prototype.setHasMicrotask=function(t){this._hasPendingMicrotasks=t,this.checkStable()},t.prototype.setHasMacrotask=function(t){this._hasPendingMacrotasks=t},t.prototype.triggerError=function(t){this._onErrorEvents.emit(t)},t}(),qo=function(){function t(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this._watchAngularEvents()}return t.prototype._watchAngularEvents=function(){var t=this;this._ngZone.onUnstable.subscribe({next:function(){t._didWork=!0,t._isZoneStable=!1}}),this._ngZone.runOutsideAngular(function(){t._ngZone.onStable.subscribe({next:function(){zo.assertNotInAngularZone(),o(function(){t._isZoneStable=!0,t._runCallbacksIfReady()})}})})},t.prototype.increasePendingRequestCount=function(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount},t.prototype.decreasePendingRequestCount=function(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount},t.prototype.isStable=function(){return this._isZoneStable&&0==this._pendingCount&&!this._ngZone.hasPendingMacrotasks},t.prototype._runCallbacksIfReady=function(){var t=this;this.isStable()?o(function(){for(;0!==t._callbacks.length;)t._callbacks.pop()(t._didWork);t._didWork=!1}):this._didWork=!0},t.prototype.whenStable=function(t){this._callbacks.push(t),this._runCallbacksIfReady()},t.prototype.getPendingRequestCount=function(){return this._pendingCount},t.prototype.findBindings=function(t,e,n){return[]},t.prototype.findProviders=function(t,e,n){return[]},t}();qo.decorators=[{type:Ur}],qo.ctorParameters=function(){return[{type:zo}]};var Zo=function(){function t(){this._applications=new Map,Xo.addToWindow(this)}return t.prototype.registerApplication=function(t,e){this._applications.set(t,e)},t.prototype.getTestability=function(t){return this._applications.get(t)||null},t.prototype.getAllTestabilities=function(){return Array.from(this._applications.values())},t.prototype.getAllRootElements=function(){return Array.from(this._applications.keys())},t.prototype.findTestabilityInTree=function(t,e){return void 0===e&&(e=!0),Xo.findTestabilityInTree(this,t,e)},t}();Zo.decorators=[{type:Ur}],Zo.ctorParameters=function(){return[]};var Wo,Ko=function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}(),Xo=new Ko,Qo=!0,Jo=!1,$o=new _r("AllowMultipleToken"),Yo=function(){function t(t,e){this.name=t,this.token=e}return t}(),ti=function(){function t(){}return t.prototype.bootstrapModuleFactory=function(t){},t.prototype.bootstrapModule=function(t,e){},t.prototype.onDestroy=function(t){},t.prototype.injector=function(){},t.prototype.destroy=function(){},t.prototype.destroyed=function(){},t}(),ei=function(t){function e(e){var n=t.call(this)||this;return n._injector=e,n._modules=[],n._destroyListeners=[],n._destroyed=!1,n}return gr(e,t),e.prototype.onDestroy=function(t){this._destroyListeners.push(t)},Object.defineProperty(e.prototype,"injector",{get:function(){return this._injector},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"destroyed",{get:function(){return this._destroyed},enumerable:!0,configurable:!0}),e.prototype.destroy=function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(function(t){return t.destroy()}),this._destroyListeners.forEach(function(t){return t()}),this._destroyed=!0},e.prototype.bootstrapModuleFactory=function(t){return this._bootstrapModuleFactoryWithZone(t)},e.prototype._bootstrapModuleFactoryWithZone=function(t,e){var n=this;return e||(e=new zo({enableLongStackTrace:rt()})),e.run(function(){var r=ho.resolveAndCreate([{provide:zo,useValue:e}],n.injector),o=t.create(r),i=o.injector.get($r,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(function(){return ct(n._modules,o)}),e.onError.subscribe({next:function(t){i.handleError(t)}}),ut(i,function(){return o.injector.get(vo).donePromise.then(function(){return n._moduleDoBootstrap(o),o})})})},e.prototype.bootstrapModule=function(t,e){return void 0===e&&(e=[]),this._bootstrapModuleWithZone(t,e)},e.prototype._bootstrapModuleWithZone=function(t,e,n){var r=this;return void 0===e&&(e=[]),this.injector.get(So).createCompiler(Array.isArray(e)?e:[e]).compileModuleAsync(t).then(function(t){return r._bootstrapModuleFactoryWithZone(t,n)})},e.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(ni);if(t.bootstrapFactories.length>0)t.bootstrapFactories.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+s(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)},e}(ti);ei.decorators=[{type:Ur}],ei.ctorParameters=function(){return[{type:Kr}]};var ni=function(){function t(){}return t.prototype.bootstrap=function(t){},t.prototype.tick=function(){},t.prototype.componentTypes=function(){},t.prototype.components=function(){},t.prototype.attachView=function(t){},t.prototype.detachView=function(t){},t.prototype.viewCount=function(){},t.prototype.isStable=function(){},t}(),ri=function(t){function e(e,r,i,s,a,u){var c=t.call(this)||this;c._zone=e,c._console=r,c._injector=i,c._exceptionHandler=s,c._componentFactoryResolver=a,c._initStatus=u,c._bootstrapListeners=[],c._rootComponents=[],c._rootComponentTypes=[],c._views=[],c._runningTick=!1,c._enforceNoNewChanges=!1,c._stable=!0,c._enforceNoNewChanges=rt(),c._zone.onMicrotaskEmpty.subscribe({next:function(){c._zone.run(function(){c.tick()})}});var l=new hr.Observable(function(t){c._stable=c._zone.isStable&&!c._zone.hasPendingMacrotasks&&!c._zone.hasPendingMicrotasks,c._zone.runOutsideAngular(function(){t.next(c._stable),t.complete()})}),p=new hr.Observable(function(t){var e=c._zone.onStable.subscribe(function(){zo.assertNotInAngularZone(),o(function(){c._stable||c._zone.hasPendingMacrotasks||c._zone.hasPendingMicrotasks||(c._stable=!0,t.next(!0))})}),n=c._zone.onUnstable.subscribe(function(){zo.assertInAngularZone(),c._stable&&(c._stable=!1,c._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});return c._isStable=n.i(dr.merge)(l,yr.share.call(p)),c}return gr(e,t),e.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},e.prototype.detachView=function(t){var e=t;ct(this._views,e),e.detachFromAppRef()},e.prototype.bootstrap=function(t){var e=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");var n;n=t instanceof Ao?t:this._componentFactoryResolver.resolveComponentFactory(t),this._rootComponentTypes.push(n.componentType);var r=n instanceof Ro?null:this._injector.get(Do),o=n.create(Kr.NULL,[],n.selector,r);o.onDestroy(function(){e._unloadComponent(o)});var i=o.injector.get(qo,null);return i&&o.injector.get(Zo).registerApplication(o.location.nativeElement,i),this._loadComponent(o),rt()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o},e.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this._rootComponents.push(t),this._injector.get(Eo,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},e.prototype._unloadComponent=function(t){this.detachView(t.hostView),ct(this._rootComponents,t)},e.prototype.tick=function(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var t=e._tickScope();try{this._runningTick=!0,this._views.forEach(function(t){return t.detectChanges()}),this._enforceNoNewChanges&&this._views.forEach(function(t){return t.checkNoChanges()})}finally{this._runningTick=!1,Bo(t)}},e.prototype.ngOnDestroy=function(){this._views.slice().forEach(function(t){return t.destroy()})},Object.defineProperty(e.prototype,"viewCount",{get:function(){return this._views.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"componentTypes",{get:function(){return this._rootComponentTypes},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"components",{get:function(){return this._rootComponents},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isStable",{get:function(){return this._isStable},enumerable:!0,configurable:!0}),e}(ni);ri._tickScope=Uo("ApplicationRef#tick()"),ri.decorators=[{type:Ur}],ri.ctorParameters=function(){return[{type:zo},{type:Oo},{type:Kr},{type:$r},{type:Vo},{type:vo}]};/**
+ * @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
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var oi=(function(){function t(t,e,n,r,o,i){this.id=t,this.templateUrl=e,this.slotCount=n,this.encapsulation=r,this.styles=o,this.animations=i}}(),function(){function t(){}t.prototype.injector=function(){},t.prototype.component=function(){},t.prototype.providerTokens=function(){},t.prototype.references=function(){},t.prototype.context=function(){},t.prototype.source=function(){}}(),function(){function t(){}return t.prototype.selectRootElement=function(t,e){},t.prototype.createElement=function(t,e,n){},t.prototype.createViewRoot=function(t){},t.prototype.createTemplateAnchor=function(t,e){},t.prototype.createText=function(t,e,n){},t.prototype.projectNodes=function(t,e){},t.prototype.attachViewAfter=function(t,e){},t.prototype.detachView=function(t){},t.prototype.destroyView=function(t,e){},t.prototype.listen=function(t,e,n){},t.prototype.listenGlobal=function(t,e,n){},t.prototype.setElementProperty=function(t,e,n){},t.prototype.setElementAttribute=function(t,e,n){},t.prototype.setBindingDebugInfo=function(t,e,n){},t.prototype.setElementClass=function(t,e,n){},t.prototype.setElementStyle=function(t,e,n){},t.prototype.invokeElementMethod=function(t,e,n){},t.prototype.setText=function(t,e){},t.prototype.animate=function(t,e,n,r,o,i,s){},t}()),ii=(new _r("Renderer2Interceptor"),function(){function t(){}t.prototype.renderComponent=function(t){}}(),function(){function t(){}return t.prototype.createRenderer=function(t,e){},t}()),si={};si.Important=1,si.DashCase=2,si[si.Important]="Important",si[si.DashCase]="DashCase";var ai=function(){function t(){}return t.prototype.data=function(){},t.prototype.destroy=function(){},t.prototype.createElement=function(t,e){},t.prototype.createComment=function(t){},t.prototype.createText=function(t){},t.prototype.appendChild=function(t,e){},t.prototype.insertBefore=function(t,e,n){},t.prototype.removeChild=function(t,e){},t.prototype.selectRootElement=function(t){},t.prototype.parentNode=function(t){},t.prototype.nextSibling=function(t){},t.prototype.setAttribute=function(t,e,n,r){},t.prototype.removeAttribute=function(t,e,n){},t.prototype.addClass=function(t,e){},t.prototype.removeClass=function(t,e){},t.prototype.setStyle=function(t,e,n,r){},t.prototype.removeStyle=function(t,e,n){},t.prototype.setProperty=function(t,e,n){},t.prototype.setValue=function(t,e){},t.prototype.listen=function(t,e,n){},t}(),ui=function(){function t(t){this.nativeElement=t}return t}(),ci=(function(){function t(){}t.prototype.load=function(t){}}(),new Map,function(){function t(){this._dirty=!0,this._results=[],this._emitter=new Go}return Object.defineProperty(t.prototype,"changes",{get:function(){return this._emitter},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"length",{get:function(){return this._results.length},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"first",{get:function(){return this._results[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"last",{get:function(){return this._results[this.length-1]},enumerable:!0,configurable:!0}),t.prototype.map=function(t){return this._results.map(t)},t.prototype.filter=function(t){return this._results.filter(t)},t.prototype.find=function(t){return this._results.find(t)},t.prototype.reduce=function(t,e){return this._results.reduce(t,e)},t.prototype.forEach=function(t){this._results.forEach(t)},t.prototype.some=function(t){return this._results.some(t)},t.prototype.toArray=function(){return this._results.slice()},t.prototype[r()]=function(){return this._results[r()]()},t.prototype.toString=function(){return this._results.toString()},t.prototype.reset=function(t){this._results=lt(t),this._dirty=!1},t.prototype.notifyOnChanges=function(){this._emitter.emit(this)},t.prototype.setDirty=function(){this._dirty=!0},Object.defineProperty(t.prototype,"dirty",{get:function(){return this._dirty},enumerable:!0,configurable:!0}),t}()),li="#",pi="NgFactory",fi=function(){function t(){}return t}(),hi={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},di=function(){function t(t,e){this._compiler=t,this._config=e||hi}return t.prototype.load=function(t){return this._compiler instanceof xo?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=t.split(li),o=r[0],i=r[1];return void 0===i&&(i="default"),n("/fcW")(o).then(function(t){return t[i]}).then(function(t){return pt(t,o,i)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=t.split(li),r=e[0],o=e[1],i=pi;return void 0===o&&(o="default",i=""),n("/fcW")(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+i]}).then(function(t){return pt(t,r,o)})},t}();di.decorators=[{type:Ur}],di.ctorParameters=function(){return[{type:xo},{type:fi,decorators:[{type:Lr}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var yi=function(){function t(){}return t.prototype.elementRef=function(){},t.prototype.createEmbeddedView=function(t){},t}(),mi=function(){function t(){}return t.prototype.element=function(){},t.prototype.injector=function(){},t.prototype.parentInjector=function(){},t.prototype.clear=function(){},t.prototype.get=function(t){},t.prototype.length=function(){},t.prototype.createEmbeddedView=function(t,e,n){},t.prototype.createComponent=function(t,e,n,r,o){},t.prototype.insert=function(t,e){},t.prototype.move=function(t,e){},t.prototype.indexOf=function(t){},t.prototype.remove=function(t){},t.prototype.detach=function(t){},t}(),gi=function(){function t(){}return t.prototype.markForCheck=function(){},t.prototype.detach=function(){},t.prototype.detectChanges=function(){},t.prototype.checkNoChanges=function(){},t.prototype.reattach=function(){},t}(),vi=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return gr(e,t),e.prototype.destroy=function(){},e.prototype.destroyed=function(){},e.prototype.onDestroy=function(t){},e}(gi),_i=(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}gr(e,t),e.prototype.context=function(){},e.prototype.rootNodes=function(){}}(vi),function(){function t(t,e){this.name=t,this.callback=e}return t}()),bi=function(){function t(t,e,n){this._debugContext=n,this.nativeNode=t,e&&e instanceof wi?e.addChild(this):this.parent=null,this.listeners=[]}return Object.defineProperty(t.prototype,"injector",{get:function(){return this._debugContext.injector},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentInstance",{get:function(){return this._debugContext.component},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return this._debugContext.context},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"references",{get:function(){return this._debugContext.references},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"providerTokens",{get:function(){return this._debugContext.providerTokens},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"source",{get:function(){return"Deprecated since v4"},enumerable:!0,configurable:!0}),t}(),wi=function(t){function e(e,n,r){var o=t.call(this,e,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=e,o}return gr(e,t),e.prototype.addChild=function(t){t&&(this.childNodes.push(t),t.parent=this)},e.prototype.removeChild=function(t){var e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))},e.prototype.insertChildrenAfter=function(t,e){var n=this,r=this.childNodes.indexOf(t);-1!==r&&((o=this.childNodes).splice.apply(o,[r+1,0].concat(e)),e.forEach(function(t){t.parent&&t.parent.removeChild(t),t.parent=n}));var o},e.prototype.insertBefore=function(t,e){var n=this.childNodes.indexOf(t);-1===n?this.addChild(e):(e.parent&&e.parent.removeChild(e),e.parent=this,this.childNodes.splice(n,0,e))},e.prototype.query=function(t){return this.queryAll(t)[0]||null},e.prototype.queryAll=function(t){var e=[];return ft(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return ht(this,t,e),e},Object.defineProperty(e.prototype,"children",{get:function(){return this.childNodes.filter(function(t){return t instanceof e})},enumerable:!0,configurable:!0}),e.prototype.triggerEventHandler=function(t,e){this.listeners.forEach(function(n){n.name==t&&n.callback(e)})},e}(bi),Ci=new Map,Ei=function(){function t(t){this.wrapped=t}return t.wrap=function(e){return new t(e)},t}(),Oi=(function(){function t(){this.hasWrappedValue=!1}t.prototype.unwrap=function(t){return t instanceof Ei?(this.hasWrappedValue=!0,t.wrapped):t},t.prototype.reset=function(){this.hasWrappedValue=!1}}(),function(){function t(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}return t.prototype.isFirstChange=function(){return this.firstChange},t}()),xi=function(){function t(){}return t.prototype.supports=function(t){return vt(t)},t.prototype.create=function(t,e){return new Pi(e||t)},t}(),Si=function(t,e){return e},Pi=function(){function t(t){this._length=0,this._collection=null,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||Si}return Object.defineProperty(t.prototype,"collection",{get:function(){return this._collection},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"length",{get:function(){return this._length},enumerable:!0,configurable:!0}),t.prototype.forEachItem=function(t){var e;for(e=this._itHead;null!==e;e=e._next)t(e)},t.prototype.forEachOperation=function(t){for(var e=this._itHead,n=this._removalsHead,r=0,o=null;e||n;){var i=!n||e&&e.currentIndex<Ct(n,r,o)?e:n,s=Ct(i,r,o),a=i.currentIndex;if(i===n)r--,n=n._nextRemoved;else if(e=e._next,null==i.previousIndex)r++;else{o||(o=[]);var u=s-r,c=a-r;if(u!=c){for(var l=0;l<u;l++){var p=l<o.length?o[l]:o[l]=0,f=p+l;c<=f&&f<u&&(o[l]=p+1)}var h=i.previousIndex;o[h]=c-u}}s!==a&&t(i,s,a)}},t.prototype.forEachPreviousItem=function(t){var e;for(e=this._previousItHead;null!==e;e=e._nextPrevious)t(e)},t.prototype.forEachAddedItem=function(t){var e;for(e=this._additionsHead;null!==e;e=e._nextAdded)t(e)},t.prototype.forEachMovedItem=function(t){var e;for(e=this._movesHead;null!==e;e=e._nextMoved)t(e)},t.prototype.forEachRemovedItem=function(t){var e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)t(e)},t.prototype.forEachIdentityChange=function(t){var e;for(e=this._identityChangesHead;null!==e;e=e._nextIdentityChange)t(e)},t.prototype.diff=function(t){if(null==t&&(t=[]),!vt(t))throw new Error("Error trying to diff '"+s(t)+"'. Only arrays and iterables are allowed");return this.check(t)?this:null},t.prototype.onDestroy=function(){},t.prototype.check=function(t){var e=this;this._reset();var n,r,o,s=this._itHead,a=!1;if(Array.isArray(t)){this._length=t.length;for(var u=0;u<this._length;u++)r=t[u],o=this._trackByFn(u,r),null!==s&&i(s.trackById,o)?(a&&(s=this._verifyReinsertion(s,r,o,u)),i(s.item,r)||this._addIdentityChange(s,r)):(s=this._mismatch(s,r,o,u),a=!0),s=s._next}else n=0,bt(t,function(t){o=e._trackByFn(n,t),null!==s&&i(s.trackById,o)?(a&&(s=e._verifyReinsertion(s,t,o,n)),i(s.item,t)||e._addIdentityChange(s,t)):(s=e._mismatch(s,t,o,n),a=!0),s=s._next,n++}),this._length=n;return this._truncate(s),this._collection=t,this.isDirty},Object.defineProperty(t.prototype,"isDirty",{get:function(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead},enumerable:!0,configurable:!0}),t.prototype._reset=function(){if(this.isDirty){var t=void 0,e=void 0;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=e)t.previousIndex=t.currentIndex,e=t._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}},t.prototype._mismatch=function(t,e,n,r){var o;return null===t?o=this._itTail:(o=t._prev,this._remove(t)),t=null===this._linkedRecords?null:this._linkedRecords.get(n,r),null!==t?(i(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,o,r)):(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null),null!==t?(i(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,o,r)):t=this._addAfter(new Ai(e,n),o,r)),t},t.prototype._verifyReinsertion=function(t,e,n,r){var o=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==o?t=this._reinsertAfter(o,t._prev,r):t.currentIndex!=r&&(t.currentIndex=r,this._addToMoves(t,r)),t},t.prototype._truncate=function(t){for(;null!==t;){var e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)},t.prototype._reinsertAfter=function(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);var r=t._prevRemoved,o=t._nextRemoved;return null===r?this._removalsHead=o:r._nextRemoved=o,null===o?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(t,e,n),this._addToMoves(t,n),t},t.prototype._moveAfter=function(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t},t.prototype._addAfter=function(t,e,n){return this._insertAfter(t,e,n),null===this._additionsTail?this._additionsTail=this._additionsHead=t:this._additionsTail=this._additionsTail._nextAdded=t,t},t.prototype._insertAfter=function(t,e,n){var r=null===e?this._itHead:e._next;return t._next=r,t._prev=e,null===r?this._itTail=t:r._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new ki),this._linkedRecords.put(t),t.currentIndex=n,t},t.prototype._remove=function(t){return this._addToRemovals(this._unlink(t))},t.prototype._unlink=function(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);var e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t},t.prototype._addToMoves=function(t,e){return t.previousIndex===e?t:(null===this._movesTail?this._movesTail=this._movesHead=t:this._movesTail=this._movesTail._nextMoved=t,t)},t.prototype._addToRemovals=function(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ki),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t},t.prototype._addIdentityChange=function(t,e){return t.item=e,null===this._identityChangesTail?this._identityChangesTail=this._identityChangesHead=t:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=t,t},t.prototype.toString=function(){var t=[];this.forEachItem(function(e){return t.push(e)});var e=[];this.forEachPreviousItem(function(t){return e.push(t)});var n=[];this.forEachAddedItem(function(t){return n.push(t)});var r=[];this.forEachMovedItem(function(t){return r.push(t)});var o=[];this.forEachRemovedItem(function(t){return o.push(t)});var i=[];return this.forEachIdentityChange(function(t){return i.push(t)}),"collection: "+t.join(", ")+"\nprevious: "+e.join(", ")+"\nadditions: "+n.join(", ")+"\nmoves: "+r.join(", ")+"\nremovals: "+o.join(", ")+"\nidentityChanges: "+i.join(", ")+"\n"},t}(),Ai=function(){function t(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}return t.prototype.toString=function(){return this.previousIndex===this.currentIndex?s(this.item):s(this.item)+"["+s(this.previousIndex)+"->"+s(this.currentIndex)+"]"},t}(),Ti=function(){function t(){this._head=null,this._tail=null}return t.prototype.add=function(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)},t.prototype.get=function(t,e){var n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<n.currentIndex)&&i(n.trackById,t))return n;return null},t.prototype.remove=function(t){var e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head},t}(),ki=function(){function t(){this.map=new Map}return t.prototype.put=function(t){var e=t.trackById,n=this.map.get(e);n||(n=new Ti,this.map.set(e,n)),n.add(t)},t.prototype.get=function(t,e){var n=t,r=this.map.get(n);return r?r.get(t,e):null},t.prototype.remove=function(t){var e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t},Object.defineProperty(t.prototype,"isEmpty",{get:function(){return 0===this.map.size},enumerable:!0,configurable:!0}),t.prototype.clear=function(){this.map.clear()},t.prototype.toString=function(){return"_DuplicateMap("+s(this.map)+")"},t}(),Vi=function(){function t(){}return t.prototype.supports=function(t){return t instanceof Map||wt(t)},t.prototype.create=function(t){return new Mi},t}(),Mi=function(){function t(){this._records=new Map,this._mapHead=null,this._appendAfter=null,this._previousMapHead=null,this._changesHead=null,this._changesTail=null,this._additionsHead=null,this._additionsTail=null,this._removalsHead=null,this._removalsTail=null}return Object.defineProperty(t.prototype,"isDirty",{get:function(){return null!==this._additionsHead||null!==this._changesHead||null!==this._removalsHead},enumerable:!0,configurable:!0}),t.prototype.forEachItem=function(t){var e;for(e=this._mapHead;null!==e;e=e._next)t(e)},t.prototype.forEachPreviousItem=function(t){var e;for(e=this._previousMapHead;null!==e;e=e._nextPrevious)t(e)},t.prototype.forEachChangedItem=function(t){var e;for(e=this._changesHead;null!==e;e=e._nextChanged)t(e)},t.prototype.forEachAddedItem=function(t){var e;for(e=this._additionsHead;null!==e;e=e._nextAdded)t(e)},t.prototype.forEachRemovedItem=function(t){var e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)t(e)},t.prototype.diff=function(t){if(t){if(!(t instanceof Map||wt(t)))throw new Error("Error trying to diff '"+s(t)+"'. Only maps and objects are allowed")}else t=new Map;return this.check(t)?this:null},t.prototype.onDestroy=function(){},t.prototype.check=function(t){var e=this;this._reset();var n=this._mapHead;if(this._appendAfter=null,this._forEach(t,function(t,r){if(n&&n.key===r)e._maybeAddToChanges(n,t),e._appendAfter=n,n=n._next;else{var o=e._getOrCreateRecordForKey(r,t);n=e._insertBeforeOrAppend(n,o)}}),n){n._prev&&(n._prev._next=null),this._removalsHead=n,this._removalsTail=n;for(var r=n;null!==r;r=r._nextRemoved)r===this._mapHead&&(this._mapHead=null),this._records.delete(r.key),r._nextRemoved=r._next,r.previousValue=r.currentValue,r.currentValue=null,r._prev=null,r._next=null}return this.isDirty},t.prototype._insertBeforeOrAppend=function(t,e){if(t){var n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null},t.prototype._getOrCreateRecordForKey=function(t,e){if(this._records.has(t)){var n=this._records.get(t);this._maybeAddToChanges(n,e);var r=n._prev,o=n._next;return r&&(r._next=o),o&&(o._prev=r),n._next=null,n._prev=null,n}var i=new Ni(t);return this._records.set(t,i),i.currentValue=e,this._addToAdditions(i),i},t.prototype._reset=function(){if(this.isDirty){var t=void 0;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=this._removalsTail=null}},t.prototype._maybeAddToChanges=function(t,e){i(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))},t.prototype._addToAdditions=function(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)},t.prototype._addToChanges=function(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)},t.prototype.toString=function(){var t,e=[],n=[],r=[],o=[],i=[];for(t=this._mapHead;null!==t;t=t._next)e.push(s(t));for(t=this._previousMapHead;null!==t;t=t._nextPrevious)n.push(s(t));for(t=this._changesHead;null!==t;t=t._nextChanged)r.push(s(t));for(t=this._additionsHead;null!==t;t=t._nextAdded)o.push(s(t));for(t=this._removalsHead;null!==t;t=t._nextRemoved)i.push(s(t));return"map: "+e.join(", ")+"\nprevious: "+n.join(", ")+"\nadditions: "+o.join(", ")+"\nchanges: "+r.join(", ")+"\nremovals: "+i.join(", ")+"\n"},t.prototype._forEach=function(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(function(n){return e(t[n],n)})},t}(),Ni=function(){function t(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}return t.prototype.toString=function(){return i(this.previousValue,this.currentValue)?s(this.key):s(this.key)+"["+s(this.previousValue)+"->"+s(this.currentValue)+"]"},t}(),ji=function(){function t(t){this.factories=t}return t.create=function(e,n){if(null!=n){var r=n.factories.slice();return e=e.concat(r),new t(e)}return new t(e)},t.extend=function(e){return{provide:t,useFactory:function(n){if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new Gr,new Lr]]}},t.prototype.find=function(t){var e=this.factories.find(function(e){return e.supports(t)});if(null!=e)return e;throw new Error("Cannot find a differ supporting object '"+t+"' of type '"+Et(t)+"'")},t}(),Ri=function(){function t(t){this.factories=t}return t.create=function(e,n){if(n){var r=n.factories.slice();e=e.concat(r)}return new t(e)},t.extend=function(e){return{provide:t,useFactory:function(n){if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new Gr,new Lr]]}},t.prototype.find=function(t){var e=this.factories.find(function(e){return e.supports(t)});if(e)return e;throw new Error("Cannot find a differ supporting object '"+t+"'")},t}(),Di=[new Vi],Ii=[new xi],Fi=new ji(Ii),Hi=new Ri(Di),Li=[{provide:Co,useValue:"unknown"},ei,{provide:ti,useExisting:ei},{provide:so,useFactory:Ot,deps:[]},{provide:io,useExisting:so},Zo,Oo],Ui=it(null,"core",Li),Bi=new _r("LocaleId"),Gi=(new _r("Translations"),new _r("TranslationsFormat"),{});Gi.Error=0,Gi.Warning=1,Gi.Ignore=2,Gi[Gi.Error]="Error",Gi[Gi.Warning]="Warning",Gi[Gi.Ignore]="Ignore";var zi={};zi.NONE=0,zi.HTML=1,zi.STYLE=2,zi.SCRIPT=3,zi.URL=4,zi.RESOURCE_URL=5,zi[zi.NONE]="NONE",zi[zi.HTML]="HTML",zi[zi.STYLE]="STYLE",zi[zi.SCRIPT]="SCRIPT",zi[zi.URL]="URL",zi[zi.RESOURCE_URL]="RESOURCE_URL";var qi=function(){function t(){}return t.prototype.sanitize=function(t,e){},t}(),Zi=(function(){function t(){}t.prototype.view=function(){},t.prototype.nodeIndex=function(){},t.prototype.injector=function(){},t.prototype.component=function(){},t.prototype.providerTokens=function(){},t.prototype.references=function(){},t.prototype.context=function(){},t.prototype.componentRenderElement=function(){},t.prototype.renderNode=function(){},t.prototype.logError=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n]}}(),{setCurrentNode:void 0,createRootView:void 0,createEmbeddedView: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}),Wi=function(){},Ki=new Map,Xi="$$undefined",Qi="$$empty",Ji=0,$i=new WeakMap,Yi=/^:([^:]+):(.+)$/,ts=new Object,es=function(t){function e(e,n,r,o,i,s){var a=t.call(this)||this;return a.selector=e,a.componentType=n,a._inputs=o,a._outputs=i,a.ngContentSelectors=s,a.viewDefFactory=r,a}return gr(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[];for(var e in this._inputs){var n=this._inputs[e];t.push({propName:e,templateName:n})}return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs){var n=this._outputs[e];t.push({propName:e,templateName:n})}return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,r){if(!r)throw new Error("ngModule should be provided");var o=Yt(this.viewDefFactory),i=o.nodes[0].element.componentProvider.index,s=Zi.createRootView(t,e||[],n,o,r,ts),a=Pt(s,i).instance;return s.renderer.setAttribute(St(s,0).renderElement,"ng-version",Fr.full),new ns(s,new os(s),a)},e}(Ao),ns=function(t){function e(e,n,r){var o=t.call(this)||this;return o._view=e,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o}return gr(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new ui(St(this._view,this._elDef.index).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new ss(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"instance",{get:function(){return this._component},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hostView",{get:function(){return this._viewRef},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"changeDetectorRef",{get:function(){return this._viewRef},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"componentType",{get:function(){return this._component.constructor},enumerable:!0,configurable:!0}),e.prototype.destroy=function(){this._viewRef.destroy()},e.prototype.onDestroy=function(t){this._viewRef.onDestroy(t)},e}(Po),rs=function(){function t(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}return Object.defineProperty(t.prototype,"element",{get:function(){return new ui(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new ss(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parentInjector",{get:function(){for(var t=this._view,e=this._elDef.parent;!e&&t;)e=qt(t),t=t.parent;return t?new ss(t,e):new ss(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length,e=t-1;e>=0;e--){var n=Ce(this._data,e);Zi.destroyView(n)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new os(e);return n.attachToViewContainerRef(this),n}return null},Object.defineProperty(t.prototype,"length",{get:function(){return this._embeddedViews.length},enumerable:!0,configurable:!0}),t.prototype.createEmbeddedView=function(t,e,n){var r=t.createEmbeddedView(e||{});return this.insert(r,n),r},t.prototype.createComponent=function(t,e,n,r,o){var i=n||this.parentInjector;o||t instanceof Ro||(o=i.get(Do));var s=t.create(i,r,void 0,o);return this.insert(s.hostView,e),s},t.prototype.insert=function(t,e){var n=t,r=n._view;return we(this._view,this._data,e,r),n.attachToViewContainerRef(this),t},t.prototype.move=function(t,e){var n=this._embeddedViews.indexOf(t._view);return Ee(this._data,n,e),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=Ce(this._data,t);e&&Zi.destroyView(e)},t.prototype.detach=function(t){var e=Ce(this._data,t);return e?new os(e):null},t}(),os=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return te(this._view)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return this._view.context},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"destroyed",{get:function(){return 0!=(8&this._view.state)},enumerable:!0,configurable:!0}),t.prototype.markForCheck=function(){Bt(this._view)},t.prototype.detach=function(){this._view.state&=-3},t.prototype.detectChanges=function(){Zi.checkAndUpdateView(this._view)},t.prototype.checkNoChanges=function(){Zi.checkNoChangesView(this._view)},t.prototype.reattach=function(){this._view.state|=2},t.prototype.onDestroy=function(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)},t.prototype.destroy=function(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Zi.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,xe(this._view),Zi.dirtyParentQueries(this._view)},t.prototype.attachToAppRef=function(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t},t.prototype.attachToViewContainerRef=function(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t},t}(),is=function(t){function e(e,n){var r=t.call(this)||this;return r._parentView=e,r._def=n,r}return gr(e,t),e.prototype.createEmbeddedView=function(t){return new os(Zi.createEmbeddedView(this._parentView,this._def,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new ui(St(this._parentView,this._def.index).renderElement)},enumerable:!0,configurable:!0}),e}(yi),ss=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){void 0===e&&(e=Kr.THROW_IF_NOT_FOUND);var n=!!this.elDef&&0!=(16777216&this.elDef.flags);return Zi.resolveDep(this.view,this.elDef,n,{flags:0,token:t,tokenKey:Dt(t)},e)},t}(),as=function(){function t(t){this.delegate=t}return t.prototype.selectRootElement=function(t){return this.delegate.selectRootElement(t)},t.prototype.createElement=function(t,e){var n=se(e),r=n[0],o=n[1],i=this.delegate.createElement(o,r);return t&&this.delegate.appendChild(t,i),i},t.prototype.createViewRoot=function(t){return t},t.prototype.createTemplateAnchor=function(t){var e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e},t.prototype.createText=function(t,e){var n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n},t.prototype.projectNodes=function(t,e){for(var n=0;n<e.length;n++)this.delegate.appendChild(t,e[n])},t.prototype.attachViewAfter=function(t,e){for(var n=this.delegate.parentNode(t),r=this.delegate.nextSibling(t),o=0;o<e.length;o++)this.delegate.insertBefore(n,e[o],r)},t.prototype.detachView=function(t){for(var e=0;e<t.length;e++){var n=t[e],r=this.delegate.parentNode(n);this.delegate.removeChild(r,n)}},t.prototype.destroyView=function(t,e){for(var n=0;n<e.length;n++)this.delegate.destroyNode(e[n])},t.prototype.listen=function(t,e,n){return this.delegate.listen(t,e,n)},t.prototype.listenGlobal=function(t,e,n){return this.delegate.listen(t,e,n)},t.prototype.setElementProperty=function(t,e,n){this.delegate.setProperty(t,e,n)},t.prototype.setElementAttribute=function(t,e,n){var r=se(e),o=r[0],i=r[1];null!=n?this.delegate.setAttribute(t,i,n,o):this.delegate.removeAttribute(t,i,o)},t.prototype.setBindingDebugInfo=function(t,e,n){},t.prototype.setElementClass=function(t,e,n){n?this.delegate.addClass(t,e):this.delegate.removeClass(t,e)},t.prototype.setElementStyle=function(t,e,n){null!=n?this.delegate.setStyle(t,e,n):this.delegate.removeStyle(t,e)},t.prototype.invokeElementMethod=function(t,e,n){t[e].apply(t,n)},t.prototype.setText=function(t,e){this.delegate.setValue(t,e)},t.prototype.animate=function(){throw new Error("Renderer.animate is no longer supported!")},t}(),us=Dt(oi),cs=Dt(ai),ls=Dt(ui),ps=Dt(mi),fs=Dt(yi),hs=Dt(gi),ds=Dt(Kr),ys=new Object,ms={},gs={};gs.CreateViewNodes=0,gs.CheckNoChanges=1,gs.CheckAndUpdate=2,gs.Destroy=3,gs[gs.CreateViewNodes]="CreateViewNodes",gs[gs.CheckNoChanges]="CheckNoChanges",gs[gs.CheckAndUpdate]="CheckAndUpdate",gs[gs.Destroy]="Destroy";/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var vs=!1,_s={};_s.create=0,_s.detectChanges=1,_s.checkNoChanges=2,_s.destroy=3,_s.handleEvent=4,_s[_s.create]="create",_s[_s.detectChanges]="detectChanges",_s[_s.checkNoChanges]="checkNoChanges",_s[_s.destroy]="destroy",_s[_s.handleEvent]="handleEvent";var bs,ws,Cs,Es=/([A-Z])/g,Os=function(){function t(t,e){this.view=t,this.nodeIndex=e,null==e&&(this.nodeIndex=e=0),this.nodeDef=t.def.nodes[e];for(var n=this.nodeDef,r=t;n&&0==(1&n.flags);)n=n.parent;if(!n)for(;!n&&r;)n=qt(r),r=r.parent;this.elDef=n,this.elView=r}return Object.defineProperty(t.prototype,"elOrCompView",{get:function(){return St(this.elView,this.elDef.index).componentView||this.view},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return Me(this.elView,this.elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"component",{get:function(){return this.elOrCompView.component},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return this.elOrCompView.context},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"providerTokens",{get:function(){var t=[];if(this.elDef)for(var e=this.elDef.index+1;e<=this.elDef.index+this.elDef.childCount;e++){var n=this.elView.def.nodes[e];10112&n.flags&&t.push(n.provider.token),e+=n.childCount}return t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"references",{get:function(){var t={};if(this.elDef){sr(this.elView,this.elDef,t);for(var e=this.elDef.index+1;e<=this.elDef.index+this.elDef.childCount;e++){var n=this.elView.def.nodes[e];10112&n.flags&&sr(this.elView,n,t),e+=n.childCount}}return t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentRenderElement",{get:function(){var t=ir(this.elOrCompView);return t?t.renderElement:void 0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"renderNode",{get:function(){return 2&this.nodeDef.flags?Zt(this.view,this.nodeDef):Zt(this.elView,this.elDef)},enumerable:!0,configurable:!0}),t.prototype.logError=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];var r,o;2&this.nodeDef.flags?(r=this.view.def,o=this.nodeDef.index):(r=this.elView.def,o=this.elDef.index);var i=or(r,o),s=-1,a=function(){return s++,s===i?(n=t.error).bind.apply(n,[t].concat(e)):Wi;var n};r.factory(a),s<i&&(t.error("Illegal state: the ViewDefinitionFactory did not call the logger!"),t.error.apply(t,e))},t}(),xs=function(){function t(t){this.delegate=t}return t.prototype.createRenderer=function(t,e){return new Ss(this.delegate.createRenderer(t,e))},t}(),Ss=function(){function t(t){this.delegate=t}return Object.defineProperty(t.prototype,"data",{get:function(){return this.delegate.data},enumerable:!0,configurable:!0}),t.prototype.destroyNode=function(t){mt(dt(t)),this.delegate.destroyNode&&this.delegate.destroyNode(t)},t.prototype.destroy=function(){this.delegate.destroy()},t.prototype.createElement=function(t,e){var n=this.delegate.createElement(t,e),r=ur();if(r){var o=new wi(n,null,r);o.name=t,yt(o)}return n},t.prototype.createComment=function(t){var e=this.delegate.createComment(t),n=ur();return n&&yt(new bi(e,null,n)),e},t.prototype.createText=function(t){var e=this.delegate.createText(t),n=ur();return n&&yt(new bi(e,null,n)),e},t.prototype.appendChild=function(t,e){var n=dt(t),r=dt(e);n&&r&&n instanceof wi&&n.addChild(r),this.delegate.appendChild(t,e)},t.prototype.insertBefore=function(t,e,n){var r=dt(t),o=dt(e),i=dt(n);r&&o&&r instanceof wi&&r.insertBefore(i,o),this.delegate.insertBefore(t,e,n)},t.prototype.removeChild=function(t,e){var n=dt(t),r=dt(e);n&&r&&n instanceof wi&&n.removeChild(r),this.delegate.removeChild(t,e)},t.prototype.selectRootElement=function(t){var e=this.delegate.selectRootElement(t),n=ur();return n&&yt(new wi(e,null,n)),e},t.prototype.setAttribute=function(t,e,n,r){var o=dt(t);if(o&&o instanceof wi){var i=r?r+":"+e:e;o.attributes[i]=n}this.delegate.setAttribute(t,e,n,r)},t.prototype.removeAttribute=function(t,e,n){var r=dt(t);if(r&&r instanceof wi){var o=n?n+":"+e:e;r.attributes[o]=null}this.delegate.removeAttribute(t,e,n)},t.prototype.addClass=function(t,e){var n=dt(t);n&&n instanceof wi&&(n.classes[e]=!0),this.delegate.addClass(t,e)},t.prototype.removeClass=function(t,e){var n=dt(t);n&&n instanceof wi&&(n.classes[e]=!1),this.delegate.removeClass(t,e)},t.prototype.setStyle=function(t,e,n,r){var o=dt(t);o&&o instanceof wi&&(o.styles[e]=n),this.delegate.setStyle(t,e,n,r)},t.prototype.removeStyle=function(t,e,n){var r=dt(t);r&&r instanceof wi&&(r.styles[e]=null),this.delegate.removeStyle(t,e,n)},t.prototype.setProperty=function(t,e,n){var r=dt(t);r&&r instanceof wi&&(r.properties[e]=n),this.delegate.setProperty(t,e,n)},t.prototype.listen=function(t,e,n){if("string"!=typeof t){var r=dt(t);r&&r.listeners.push(new _i(e,n))}return this.delegate.listen(t,e,n)},t.prototype.parentNode=function(t){return this.delegate.parentNode(t)},t.prototype.nextSibling=function(t){return this.delegate.nextSibling(t)},t.prototype.setValue=function(t,e){return this.delegate.setValue(t,e)},t}(),Ps=function(){function t(t){}return t}();Ps.decorators=[{type:Rr,args:[{providers:[ri,{provide:ni,useExisting:ri},vo,xo,bo,{provide:ji,useFactory:cr},{provide:Ri,useFactory:lr},{provide:Bi,useFactory:pr,deps:[[new Hr(Bi),new Lr,new Gr]]},{provide:go,useValue:fr,multi:!0}]}]}],Ps.ctorParameters=function(){return[{type:ni}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var As={};As.OnInit=0,As.OnDestroy=1,As.DoCheck=2,As.OnChanges=3,As.AfterContentInit=4,As.AfterContentChecked=5,As.AfterViewInit=6,As.AfterViewChecked=7,As[As.OnInit]="OnInit",As[As.OnDestroy]="OnDestroy",As[As.DoCheck]="DoCheck",As[As.OnChanges]="OnChanges",As[As.AfterContentInit]="AfterContentInit",As[As.AfterContentChecked]="AfterContentChecked",As[As.AfterViewInit]="AfterViewInit",As[As.AfterViewChecked]="AfterViewChecked";As.OnInit,As.OnDestroy,As.DoCheck,As.OnChanges,As.AfterContentInit,As.AfterContentChecked,As.AfterViewInit,As.AfterViewChecked}).call(e,n("DuR2"))},"7rB9":function(t,e,n){"use strict";var r=n("t2qv");e.forkJoin=r.ForkJoinObservable.create},B00U:function(t,e,n){"use strict";function r(t){return t.reduce(function(t,e){return t.concat(e instanceof c.UnsubscriptionError?e.errors:e)},[])}var o=n("Xajo"),i=n("ICpg"),s=n("SKH6"),a=n("+3eL"),u=n("WhVc"),c=n("GIjk"),l=function(){function t(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}return t.prototype.unsubscribe=function(){var t,e=!1;if(!this.closed){var n=this,l=n._parent,p=n._parents,f=n._unsubscribe,h=n._subscriptions;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;for(var d=-1,y=p?p.length:0;l;)l.remove(this),l=++d<y&&p[d]||null;if(s.isFunction(f)){var m=a.tryCatch(f).call(this);m===u.errorObject&&(e=!0,t=t||(u.errorObject.e instanceof c.UnsubscriptionError?r(u.errorObject.e.errors):[u.errorObject.e]))}if(o.isArray(h))for(d=-1,y=h.length;++d<y;){var g=h[d];if(i.isObject(g)){var m=a.tryCatch(g.unsubscribe).call(g);if(m===u.errorObject){e=!0,t=t||[];var v=u.errorObject.e;v instanceof c.UnsubscriptionError?t=t.concat(r(v.errors)):t.push(v)}}}if(e)throw new c.UnsubscriptionError(t)}},t.prototype.add=function(e){if(!e||e===t.EMPTY)return t.EMPTY;if(e===this)return this;var n=e;switch(typeof e){case"function":n=new t(e);case"object":if(n.closed||"function"!=typeof n.unsubscribe)return n;if(this.closed)return n.unsubscribe(),n;if("function"!=typeof n._addParent){var r=n;n=new t,n._subscriptions=[r]}break;default:throw new Error("unrecognized teardown "+e+" added to Subscription.")}return(this._subscriptions||(this._subscriptions=[])).push(n),n._addParent(this),n},t.prototype.remove=function(t){var e=this._subscriptions;if(e){var n=e.indexOf(t);-1!==n&&e.splice(n,1)}},t.prototype._addParent=function(t){var e=this,n=e._parent,r=e._parents;n&&n!==t?r?-1===r.indexOf(t)&&r.push(t):this._parents=[t]:this._parent=t},t.EMPTY=function(t){return t.closed=!0,t}(new t),t}();e.Subscription=l},CURp:function(t,e,n){"use strict";function r(t,e,n,r){var f=new l.InnerSubscriber(t,n,r);if(f.closed)return null;if(e instanceof u.Observable)return e._isScalar?(f.next(e.value),f.complete(),null):e.subscribe(f);if(i.isArrayLike(e)){for(var h=0,d=e.length;h<d&&!f.closed;h++)f.next(e[h]);f.closed||f.complete()}else{if(s.isPromise(e))return e.then(function(t){f.closed||(f.next(t),f.complete())},function(t){return f.error(t)}).then(null,function(t){o.root.setTimeout(function(){throw t})}),f;if(e&&"function"==typeof e[c.iterator])for(var y=e[c.iterator]();;){var m=y.next();if(m.done){f.complete();break}if(f.next(m.value),f.closed)break}else if(e&&"function"==typeof e[p.observable]){var g=e[p.observable]();if("function"==typeof g.subscribe)return g.subscribe(new l.InnerSubscriber(t,n,r));f.error(new TypeError("Provided object does not correctly implement Symbol.observable"))}else{var v=a.isObject(e)?"an invalid object":"'"+e+"'",_="You provided "+v+" where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.";f.error(new TypeError(_))}}return null}var o=n("VOfZ"),i=n("1r8+"),s=n("aQl7"),a=n("ICpg"),u=n("rCTf"),c=n("cdmN"),l=n("QqRK"),p=n("mbVC");e.subscribeToResult=r},DuR2:function(t,e){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(n=window)}t.exports=n},EEr4:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("rCTf"),i=n("mmVS"),s=n("B00U"),a=n("IZVw"),u=n("ZJf8"),c=n("r8ZY"),l=function(t){function e(e){t.call(this,e),this.destination=e}return r(e,t),e}(i.Subscriber);e.SubjectSubscriber=l;var p=function(t){function e(){t.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return r(e,t),e.prototype[c.rxSubscriber]=function(){return new l(this)},e.prototype.lift=function(t){var e=new f(this,this);return e.operator=t,e},e.prototype.next=function(t){if(this.closed)throw new a.ObjectUnsubscribedError;if(!this.isStopped)for(var e=this.observers,n=e.length,r=e.slice(),o=0;o<n;o++)r[o].next(t)},e.prototype.error=function(t){if(this.closed)throw new a.ObjectUnsubscribedError;this.hasError=!0,this.thrownError=t,this.isStopped=!0;for(var e=this.observers,n=e.length,r=e.slice(),o=0;o<n;o++)r[o].error(t);this.observers.length=0},e.prototype.complete=function(){if(this.closed)throw new a.ObjectUnsubscribedError;this.isStopped=!0;for(var t=this.observers,e=t.length,n=t.slice(),r=0;r<e;r++)n[r].complete();this.observers.length=0},e.prototype.unsubscribe=function(){this.isStopped=!0,this.closed=!0,this.observers=null},e.prototype._trySubscribe=function(e){if(this.closed)throw new a.ObjectUnsubscribedError;return t.prototype._trySubscribe.call(this,e)},e.prototype._subscribe=function(t){if(this.closed)throw new a.ObjectUnsubscribedError;return this.hasError?(t.error(this.thrownError),s.Subscription.EMPTY):this.isStopped?(t.complete(),s.Subscription.EMPTY):(this.observers.push(t),new u.SubjectSubscription(this,t))},e.prototype.asObservable=function(){var t=new o.Observable;return t.source=this,t},e.create=function(t,e){return new f(t,e)},e}(o.Observable);e.Subject=p;var f=function(t){function e(e,n){t.call(this),this.destination=e,this.source=n}return r(e,t),e.prototype.next=function(t){var e=this.destination;e&&e.next&&e.next(t)},e.prototype.error=function(t){var e=this.destination;e&&e.error&&this.destination.error(t)},e.prototype.complete=function(){var t=this.destination;t&&t.complete&&this.destination.complete()},e.prototype._subscribe=function(t){return this.source?this.source.subscribe(t):s.Subscription.EMPTY},e}(p);e.AnonymousSubject=f},Fzro:function(t,e,n){"use strict";/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function r(t){if("string"!=typeof t)return t;switch(t.toUpperCase()){case"GET":return _.Get;case"POST":return _.Post;case"PUT":return _.Put;case"DELETE":return _.Delete;case"OPTIONS":return _.Options;case"HEAD":return _.Head;case"PATCH":return _.Patch}throw new Error('Invalid request method. The method "'+t+'" is not supported.')}function o(t){return"responseURL"in t?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):void 0}function i(t){for(var e=new Uint16Array(t.length),n=0,r=t.length;n<r;n++)e[n]=t.charCodeAt(n);return e.buffer}/**
+ * @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 {?=} rawParams
+ * @return {?}
+ */
+function s(t){void 0===t&&(t="");var e=new Map;if(t.length>0){t.split("&").forEach(function(t){var n=t.indexOf("="),r=-1==n?[t,""]:[t.slice(0,n),t.slice(n+1)],o=r[0],i=r[1],s=e.get(o)||[];s.push(i),e.set(o,s)})}return e}function a(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,"/")}function u(){var t="object"==typeof window?window:{};return null===D&&(D=t[R]={}),D}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function c(t,e){return t.createConnection(e).response}function l(t,e,n,r){var o=t;return e?o.merge(new K({method:e.method||n,url:e.url||r,search:e.search,params:e.params,headers:e.headers,body:e.body,withCredentials:e.withCredentials,responseType:e.responseType})):o.merge(new K({method:n,url:r}))}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function p(){return new Z}function f(t,e){return new nt(t,e)}function h(t,e){return new rt(t,e)}var d=n("3j3K"),y=n("rCTf"),m=(n.n(y),n("Qbdm"));n.d(e,"a",function(){return v}),n.d(e,"d",function(){return W}),n.d(e,"e",function(){return X}),n.d(e,"j",function(){return K}),n.d(e,"b",function(){return S}),n.d(e,"h",function(){return x}),n.d(e,"k",function(){return nt}),n.d(e,"g",function(){return ot}),n.d(e,"i",function(){return A}),n.d(e,"c",function(){return p}),n.d(e,"f",function(){return f});var g=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},v=function(){function t(){}return t.prototype.build=function(){return new XMLHttpRequest},t}();v.decorators=[{type:d.z}],v.ctorParameters=function(){return[]};var _={};_.Get=0,_.Post=1,_.Put=2,_.Delete=3,_.Options=4,_.Head=5,_.Patch=6,_[_.Get]="Get",_[_.Post]="Post",_[_.Put]="Put",_[_.Delete]="Delete",_[_.Options]="Options",_[_.Head]="Head",_[_.Patch]="Patch";var b={};b.Unsent=0,b.Open=1,b.HeadersReceived=2,b.Loading=3,b.Done=4,b.Cancelled=5,b[b.Unsent]="Unsent",b[b.Open]="Open",b[b.HeadersReceived]="HeadersReceived",b[b.Loading]="Loading",b[b.Done]="Done",b[b.Cancelled]="Cancelled";var w={};w.Basic=0,w.Cors=1,w.Default=2,w.Error=3,w.Opaque=4,w[w.Basic]="Basic",w[w.Cors]="Cors",w[w.Default]="Default",w[w.Error]="Error",w[w.Opaque]="Opaque";var C={};C.NONE=0,C.JSON=1,C.FORM=2,C.FORM_DATA=3,C.TEXT=4,C.BLOB=5,C.ARRAY_BUFFER=6,C[C.NONE]="NONE",C[C.JSON]="JSON",C[C.FORM]="FORM",C[C.FORM_DATA]="FORM_DATA",C[C.TEXT]="TEXT",C[C.BLOB]="BLOB",C[C.ARRAY_BUFFER]="ARRAY_BUFFER";var E={};E.Text=0,E.Json=1,E.ArrayBuffer=2,E.Blob=3,E[E.Text]="Text",E[E.Json]="Json",E[E.ArrayBuffer]="ArrayBuffer",E[E.Blob]="Blob";var O=function(){function t(e){var n=this;if(this._headers=new Map,this._normalizedNames=new Map,e)return e instanceof t?void e.forEach(function(t,e){t.forEach(function(t){return n.append(e,t)})}):void Object.keys(e).forEach(function(t){var r=Array.isArray(e[t])?e[t]:[e[t]];n.delete(t),r.forEach(function(e){return n.append(t,e)})})}return t.fromResponseHeaderString=function(e){var n=new t;return e.split("\n").forEach(function(t){var e=t.indexOf(":");if(e>0){var r=t.slice(0,e),o=t.slice(e+1).trim();n.set(r,o)}}),n},t.prototype.append=function(t,e){var n=this.getAll(t);null===n?this.set(t,e):n.push(e)},t.prototype.delete=function(t){var e=t.toLowerCase();this._normalizedNames.delete(e),this._headers.delete(e)},t.prototype.forEach=function(t){var e=this;this._headers.forEach(function(n,r){return t(n,e._normalizedNames.get(r),e._headers)})},t.prototype.get=function(t){var e=this.getAll(t);return null===e?null:e.length>0?e[0]:null},t.prototype.has=function(t){return this._headers.has(t.toLowerCase())},t.prototype.keys=function(){return Array.from(this._normalizedNames.values())},t.prototype.set=function(t,e){Array.isArray(e)?e.length&&this._headers.set(t.toLowerCase(),[e.join(",")]):this._headers.set(t.toLowerCase(),[e]),this.mayBeSetNormalizedName(t)},t.prototype.values=function(){return Array.from(this._headers.values())},t.prototype.toJSON=function(){var t=this,e={};return this._headers.forEach(function(n,r){var o=[];n.forEach(function(t){return o.push.apply(o,t.split(","))}),e[t._normalizedNames.get(r)]=o}),e},t.prototype.getAll=function(t){return this.has(t)?this._headers.get(t.toLowerCase()):null},t.prototype.entries=function(){throw new Error('"entries" method is not implemented on Headers class')},t.prototype.mayBeSetNormalizedName=function(t){var e=t.toLowerCase();this._normalizedNames.has(e)||this._normalizedNames.set(e,t)},t}(),x=function(){function t(t){var e=void 0===t?{}:t,n=e.body,r=e.status,o=e.headers,i=e.statusText,s=e.type,a=e.url;this.body=null!=n?n:null,this.status=null!=r?r:null,this.headers=null!=o?o:null,this.statusText=null!=i?i:null,this.type=null!=s?s:null,this.url=null!=a?a:null}return t.prototype.merge=function(e){return new t({body:e&&null!=e.body?e.body:this.body,status:e&&null!=e.status?e.status:this.status,headers:e&&null!=e.headers?e.headers:this.headers,statusText:e&&null!=e.statusText?e.statusText:this.statusText,type:e&&null!=e.type?e.type:this.type,url:e&&null!=e.url?e.url:this.url})},t}(),S=function(t){function e(){return t.call(this,{status:200,statusText:"Ok",type:w.Default,headers:new O})||this}return g(e,t),e}(x);S.decorators=[{type:d.z}],S.ctorParameters=function(){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
+ */
+var P=function(){function t(){}return t.prototype.createConnection=function(t){},t}(),A=(function(){function t(){}}(),function(){function t(){}return t.prototype.configureRequest=function(t){},t}()),T=function(t){return t>=200&&t<300},k=function(){function t(){}return t.prototype.encodeKey=function(t){return a(t)},t.prototype.encodeValue=function(t){return a(t)},t}(),V=function(){function t(t,e){void 0===t&&(t=""),void 0===e&&(e=new k),this.rawParams=t,this.queryEncoder=e,this.paramsMap=s(t)}return t.prototype.clone=function(){var e=new t("",this.queryEncoder);return e.appendAll(this),e},t.prototype.has=function(t){return this.paramsMap.has(t)},t.prototype.get=function(t){var e=this.paramsMap.get(t);return Array.isArray(e)?e[0]:null},t.prototype.getAll=function(t){return this.paramsMap.get(t)||[]},t.prototype.set=function(t,e){if(void 0===e||null===e)return void this.delete(t);var n=this.paramsMap.get(t)||[];n.length=0,n.push(e),this.paramsMap.set(t,n)},t.prototype.setAll=function(t){var e=this;t.paramsMap.forEach(function(t,n){var r=e.paramsMap.get(n)||[];r.length=0,r.push(t[0]),e.paramsMap.set(n,r)})},t.prototype.append=function(t,e){if(void 0!==e&&null!==e){var n=this.paramsMap.get(t)||[];n.push(e),this.paramsMap.set(t,n)}},t.prototype.appendAll=function(t){var e=this;t.paramsMap.forEach(function(t,n){for(var r=e.paramsMap.get(n)||[],o=0;o<t.length;++o)r.push(t[o]);e.paramsMap.set(n,r)})},t.prototype.replaceAll=function(t){var e=this;t.paramsMap.forEach(function(t,n){var r=e.paramsMap.get(n)||[];r.length=0;for(var o=0;o<t.length;++o)r.push(t[o]);e.paramsMap.set(n,r)})},t.prototype.toString=function(){var t=this,e=[];return this.paramsMap.forEach(function(n,r){n.forEach(function(n){return e.push(t.queryEncoder.encodeKey(r)+"="+t.queryEncoder.encodeValue(n))})}),e.join("&")},t.prototype.delete=function(t){this.paramsMap.delete(t)},t}(),M=function(){function t(){}return t.prototype.json=function(){return"string"==typeof this._body?JSON.parse(this._body):this._body instanceof ArrayBuffer?JSON.parse(this.text()):this._body},t.prototype.text=function(){return this._body instanceof V?this._body.toString():this._body instanceof ArrayBuffer?String.fromCharCode.apply(null,new Uint16Array(this._body)):null==this._body?"":"object"==typeof this._body?JSON.stringify(this._body,null,2):this._body.toString()},t.prototype.arrayBuffer=function(){return this._body instanceof ArrayBuffer?this._body:i(this.text())},t.prototype.blob=function(){if(this._body instanceof Blob)return this._body;if(this._body instanceof ArrayBuffer)return new Blob([this._body]);throw new Error("The request body isn't either a blob or an array buffer")},t}(),N=function(t){function e(e){var n=t.call(this)||this;return n._body=e.body,n.status=e.status,n.ok=n.status>=200&&n.status<=299,n.statusText=e.statusText,n.headers=e.headers,n.type=e.type,n.url=e.url,n}return g(e,t),e.prototype.toString=function(){return"Response with status: "+this.status+" "+this.statusText+" for URL: "+this.url},e}(M),j=0,R="__ng_jsonp__",D=null,I=function(){function t(){}return t.prototype.build=function(t){var e=document.createElement("script");return e.src=t,e},t.prototype.nextRequestID=function(){return"__req"+j++},t.prototype.requestCallback=function(t){return R+"."+t+".finished"},t.prototype.exposeConnection=function(t,e){u()[t]=e},t.prototype.removeConnection=function(t){u()[t]=null},t.prototype.send=function(t){document.body.appendChild(t)},t.prototype.cleanup=function(t){t.parentNode&&t.parentNode.removeChild(t)},t}();I.decorators=[{type:d.z}],I.ctorParameters=function(){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
+ */
+var F="JSONP injected script did not invoke callback.",H="JSONP requests must use GET request method.",L=function(){function t(){}return t.prototype.finished=function(t){},t}(),U=function(t){function e(e,n,r){var o=t.call(this)||this;if(o._dom=n,o.baseResponseOptions=r,o._finished=!1,e.method!==_.Get)throw new TypeError(H);return o.request=e,o.response=new y.Observable(function(t){o.readyState=b.Loading;var i=o._id=n.nextRequestID();n.exposeConnection(i,o);var s=n.requestCallback(o._id),a=e.url;a.indexOf("=JSONP_CALLBACK&")>-1?a=a.replace("=JSONP_CALLBACK&","="+s+"&"):a.lastIndexOf("=JSONP_CALLBACK")===a.length-"=JSONP_CALLBACK".length&&(a=a.substring(0,a.length-"=JSONP_CALLBACK".length)+"="+s);var u=o._script=n.build(a),c=function(e){if(o.readyState!==b.Cancelled){if(o.readyState=b.Done,n.cleanup(u),!o._finished){var i=new x({body:F,type:w.Error,url:a});return r&&(i=r.merge(i)),void t.error(new N(i))}var s=new x({body:o._responseData,url:a});o.baseResponseOptions&&(s=o.baseResponseOptions.merge(s)),t.next(new N(s)),t.complete()}},l=function(e){if(o.readyState!==b.Cancelled){o.readyState=b.Done,n.cleanup(u);var i=new x({body:e.message,type:w.Error});r&&(i=r.merge(i)),t.error(new N(i))}};return u.addEventListener("load",c),u.addEventListener("error",l),n.send(u),function(){o.readyState=b.Cancelled,u.removeEventListener("load",c),u.removeEventListener("error",l),o._dom.cleanup(u)}}),o}return g(e,t),e.prototype.finished=function(t){this._finished=!0,this._dom.removeConnection(this._id),this.readyState!==b.Cancelled&&(this._responseData=t)},e}(L),B=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return g(e,t),e}(P),G=function(t){function e(e,n){var r=t.call(this)||this;return r._browserJSONP=e,r._baseResponseOptions=n,r}return g(e,t),e.prototype.createConnection=function(t){return new U(t,this._browserJSONP,this._baseResponseOptions)},e}(B);G.decorators=[{type:d.z}],G.ctorParameters=function(){return[{type:I},{type:x}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var z=/^\)\]\}',?\n/,q=function(){function t(t,e,n){var r=this;this.request=t,this.response=new y.Observable(function(i){var s=e.build();s.open(_[t.method].toUpperCase(),t.url),null!=t.withCredentials&&(s.withCredentials=t.withCredentials);var a=function(){var e=1223===s.status?204:s.status,r=null;204!==e&&"string"==typeof(r=void 0===s.response?s.responseText:s.response)&&(r=r.replace(z,"")),0===e&&(e=r?200:0);var a=O.fromResponseHeaderString(s.getAllResponseHeaders()),u=o(s)||t.url,c=s.statusText||"OK",l=new x({body:r,status:e,headers:a,statusText:c,url:u});null!=n&&(l=n.merge(l));var p=new N(l);if(p.ok=T(e),p.ok)return i.next(p),void i.complete();i.error(p)},u=function(t){var e=new x({body:t,type:w.Error,status:s.status,statusText:s.statusText});null!=n&&(e=n.merge(e)),i.error(new N(e))};if(r.setDetectedContentType(t,s),null==t.headers&&(t.headers=new O),t.headers.has("Accept")||t.headers.append("Accept","application/json, text/plain, */*"),t.headers.forEach(function(t,e){return s.setRequestHeader(e,t.join(","))}),null!=t.responseType&&null!=s.responseType)switch(t.responseType){case E.ArrayBuffer:s.responseType="arraybuffer";break;case E.Json:s.responseType="json";break;case E.Text:s.responseType="text";break;case E.Blob:s.responseType="blob";break;default:throw new Error("The selected responseType is not supported")}return s.addEventListener("load",a),s.addEventListener("error",u),s.send(r.request.getBody()),function(){s.removeEventListener("load",a),s.removeEventListener("error",u),s.abort()}})}return t.prototype.setDetectedContentType=function(t,e){if(null==t.headers||null==t.headers.get("Content-Type"))switch(t.contentType){case C.NONE:break;case C.JSON:e.setRequestHeader("content-type","application/json");break;case C.FORM:e.setRequestHeader("content-type","application/x-www-form-urlencoded;charset=UTF-8");break;case C.TEXT:e.setRequestHeader("content-type","text/plain");break;case C.BLOB:var n=t.blob();n.type&&e.setRequestHeader("content-type",n.type)}},t}(),Z=function(){function t(t,e){void 0===t&&(t="XSRF-TOKEN"),void 0===e&&(e="X-XSRF-TOKEN"),this._cookieName=t,this._headerName=e}return t.prototype.configureRequest=function(t){var e=n.i(m.u)().getCookie(this._cookieName);e&&t.headers.set(this._headerName,e)},t}(),W=function(){function t(t,e,n){this._browserXHR=t,this._baseResponseOptions=e,this._xsrfStrategy=n}return t.prototype.createConnection=function(t){return this._xsrfStrategy.configureRequest(t),new q(t,this._browserXHR,this._baseResponseOptions)},t}();W.decorators=[{type:d.z}],W.ctorParameters=function(){return[{type:v},{type:x},{type:A}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var K=function(){function t(t){var e=void 0===t?{}:t,n=e.method,o=e.headers,i=e.body,s=e.url,a=e.search,u=e.params,c=e.withCredentials,l=e.responseType;this.method=null!=n?r(n):null,this.headers=null!=o?o:null,this.body=null!=i?i:null,this.url=null!=s?s:null,this.params=this._mergeSearchParams(u||a),this.withCredentials=null!=c?c:null,this.responseType=null!=l?l:null}return Object.defineProperty(t.prototype,"search",{get:function(){return this.params},set:function(t){this.params=t},enumerable:!0,configurable:!0}),t.prototype.merge=function(e){return new t({method:e&&null!=e.method?e.method:this.method,headers:e&&null!=e.headers?e.headers:new O(this.headers),body:e&&null!=e.body?e.body:this.body,url:e&&null!=e.url?e.url:this.url,params:e&&this._mergeSearchParams(e.params||e.search),withCredentials:e&&null!=e.withCredentials?e.withCredentials:this.withCredentials,responseType:e&&null!=e.responseType?e.responseType:this.responseType})},t.prototype._mergeSearchParams=function(t){return t?t instanceof V?t.clone():"string"==typeof t?new V(t):this._parseParams(t):this.params},t.prototype._parseParams=function(t){var e=this;void 0===t&&(t={});var n=new V;return Object.keys(t).forEach(function(r){var o=t[r];Array.isArray(o)?o.forEach(function(t){return e._appendParam(r,t,n)}):e._appendParam(r,o,n)}),n},t.prototype._appendParam=function(t,e,n){"string"!=typeof e&&(e=JSON.stringify(e)),n.append(t,e)},t}(),X=function(t){function e(){return t.call(this,{method:_.Get,headers:new O})||this}return g(e,t),e}(K);X.decorators=[{type:d.z}],X.ctorParameters=function(){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
+ */
+var Q=function(t){function e(e){var n=t.call(this)||this,o=e.url;if(n.url=e.url,e.params){var i=e.params.toString();if(i.length>0){var s="?";-1!=n.url.indexOf("?")&&(s="&"==n.url[n.url.length-1]?"":"&"),n.url=o+s+i}}return n._body=e.body,n.method=r(e.method),n.headers=new O(e.headers),n.contentType=n.detectContentType(),n.withCredentials=e.withCredentials,n.responseType=e.responseType,n}return g(e,t),e.prototype.detectContentType=function(){switch(this.headers.get("content-type")){case"application/json":return C.JSON;case"application/x-www-form-urlencoded":return C.FORM;case"multipart/form-data":return C.FORM_DATA;case"text/plain":case"text/html":return C.TEXT;case"application/octet-stream":return this._body instanceof et?C.ARRAY_BUFFER:C.BLOB;default:return this.detectContentTypeFromBody()}},e.prototype.detectContentTypeFromBody=function(){return null==this._body?C.NONE:this._body instanceof V?C.FORM:this._body instanceof Y?C.FORM_DATA:this._body instanceof tt?C.BLOB:this._body instanceof et?C.ARRAY_BUFFER:this._body&&"object"==typeof this._body?C.JSON:C.TEXT},e.prototype.getBody=function(){switch(this.contentType){case C.JSON:case C.FORM:return this.text();case C.FORM_DATA:return this._body;case C.TEXT:return this.text();case C.BLOB:return this.blob();case C.ARRAY_BUFFER:return this.arrayBuffer();default:return null}},e}(M),J=function(){},$="object"==typeof window?window:J,Y=$.FormData||J,tt=$.Blob||J,et=$.ArrayBuffer||J,nt=function(){function t(t,e){this._backend=t,this._defaultOptions=e}return t.prototype.request=function(t,e){var n;if("string"==typeof t)n=c(this._backend,new Q(l(this._defaultOptions,e,_.Get,t)));else{if(!(t instanceof Q))throw new Error("First argument must be a url string or Request instance.");n=c(this._backend,t)}return n},t.prototype.get=function(t,e){return this.request(new Q(l(this._defaultOptions,e,_.Get,t)))},t.prototype.post=function(t,e,n){return this.request(new Q(l(this._defaultOptions.merge(new K({body:e})),n,_.Post,t)))},t.prototype.put=function(t,e,n){return this.request(new Q(l(this._defaultOptions.merge(new K({body:e})),n,_.Put,t)))},t.prototype.delete=function(t,e){return this.request(new Q(l(this._defaultOptions,e,_.Delete,t)))},t.prototype.patch=function(t,e,n){return this.request(new Q(l(this._defaultOptions.merge(new K({body:e})),n,_.Patch,t)))},t.prototype.head=function(t,e){return this.request(new Q(l(this._defaultOptions,e,_.Head,t)))},t.prototype.options=function(t,e){return this.request(new Q(l(this._defaultOptions,e,_.Options,t)))},t}();nt.decorators=[{type:d.z}],nt.ctorParameters=function(){return[{type:P},{type:K}]};var rt=function(t){function e(e,n){return t.call(this,e,n)||this}return g(e,t),e.prototype.request=function(t,e){if("string"==typeof t&&(t=new Q(l(this._defaultOptions,e,_.Get,t))),!(t instanceof Q))throw new Error("First argument must be a url string or Request instance.");if(t.method!==_.Get)throw new Error("JSONP requests must use GET request method.");return c(this._backend,t)},e}(nt);rt.decorators=[{type:d.z}],rt.ctorParameters=function(){return[{type:P},{type:K}]};var ot=function(){function t(){}return t}();ot.decorators=[{type:d.A,args:[{providers:[{provide:nt,useFactory:f,deps:[W,K]},v,{provide:K,useClass:X},{provide:x,useClass:S},W,{provide:A,useFactory:p}]}]}],ot.ctorParameters=function(){return[]};var it=function(){function t(){}return t}();it.decorators=[{type:d.A,args:[{providers:[{provide:rt,useFactory:h,deps:[B,K]},I,{provide:K,useClass:X},{provide:x,useClass:S},{provide:B,useClass:G}]}]}],it.ctorParameters=function(){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
+ */
+new d.B("4.0.2")},GIjk:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=function(t){function e(e){t.call(this),this.errors=e;var n=Error.call(this,e?e.length+" errors occurred during unsubscription:\n  "+e.map(function(t,e){return e+1+") "+t.toString()}).join("\n  "):"");this.name=n.name="UnsubscriptionError",this.stack=n.stack,this.message=n.message}return r(e,t),e}(Error);e.UnsubscriptionError=o},ICpg:function(t,e,n){"use strict";function r(t){return null!=t&&"object"==typeof t}e.isObject=r},IZVw:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=function(t){function e(){var e=t.call(this,"object unsubscribed");this.name=e.name="ObjectUnsubscribedError",this.stack=e.stack,this.message=e.message}return r(e,t),e}(Error);e.ObjectUnsubscribedError=o},NVOs:function(t,e,n){"use strict";function r(t){return null==t||0===t.length}function o(t){return null!=t}function i(t){var e=n.i(N._5)(t)?n.i(R.fromPromise)(t):t;if(!n.i(N._6)(e))throw new Error("Expected validator to return Promise or Observable.");return e}function s(t,e){return e.map(function(e){return e(t)})}function a(t,e){return e.map(function(e){return e(t)})}function u(t){var e=t.reduce(function(t,e){return null!=e?U({},t,e):t},{});return 0===Object.keys(e).length?null:e}function c(){return/android (\d+)/.test((n.i(I.u)()?n.i(I.u)().getUserAgent():"").toLowerCase())}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function l(t){return t.validate?function(e){return t.validate(e)}:t}function p(t){return t.validate?function(e){return t.validate(e)}:t}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function f(){throw new Error("unimplemented")}function h(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}function d(t){return t.split(":")[0]}function y(t,e){return null==t?""+e:("string"==typeof e&&(e="'"+e+"'"),e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}function m(t){return t.split(":")[0]}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+function g(t,e){return e.path.concat([t])}function v(t,e){t||C(e,"Cannot find control with"),e.valueAccessor||C(e,"No value accessor for form control with"),t.validator=q.compose([t.validator,e.validator]),t.asyncValidator=q.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),e.valueAccessor.registerOnChange(function(n){e.viewToModelUpdate(n),t.markAsDirty(),t.setValue(n,{emitModelToViewChange:!1})}),e.valueAccessor.registerOnTouched(function(){return t.markAsTouched()}),t.registerOnChange(function(t,n){e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)}),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(function(t){e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(function(e){e.registerOnValidatorChange&&e.registerOnValidatorChange(function(){return t.updateValueAndValidity()})}),e._rawAsyncValidators.forEach(function(e){e.registerOnValidatorChange&&e.registerOnValidatorChange(function(){return t.updateValueAndValidity()})})}function _(t,e){e.valueAccessor.registerOnChange(function(){return w(e)}),e.valueAccessor.registerOnTouched(function(){return w(e)}),e._rawValidators.forEach(function(t){t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),e._rawAsyncValidators.forEach(function(t){t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),t&&t._clearChangeFns()}function b(t,e){null==t&&C(e,"Cannot find control with"),t.validator=q.compose([t.validator,e.validator]),t.asyncValidator=q.composeAsync([t.asyncValidator,e.asyncValidator])}function w(t){return C(t,"There is no FormControl instance attached to form control element with")}function C(t,e){var n;throw n=t.path.length>1?"path: '"+t.path.join(" -> ")+"'":t.path[0]?"name: '"+t.path+"'":"unspecified name attribute",new Error(e+" "+n)}function E(t){return null!=t?q.compose(t.map(l)):null}function O(t){return null!=t?q.composeAsync(t.map(p)):null}function x(t,e){if(!t.hasOwnProperty("model"))return!1;var r=t.model;return!!r.isFirstChange()||!n.i(N._11)(e,r.currentValue)}function S(t){return ft.some(function(e){return t.constructor===e})}function P(t,e){if(!e)return null;var n,r,o;return e.forEach(function(e){e.constructor===J?n=e:S(e)?(r&&C(t,"More than one built-in value accessor matches form control with"),r=e):(o&&C(t,"More than one custom value accessor matches form control with"),o=e)}),o||(r||(n||(C(t,"No valid value accessor for form control with"),null)))}function A(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(n)),e instanceof Array&&0===e.length?null:e.reduce(function(t,e){return t instanceof Ot?t.controls[e]||null:t instanceof xt?t.at(e)||null:null},t))}function T(t){return Array.isArray(t)?E(t):t}function k(t){return Array.isArray(t)?O(t):t}function V(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}function M(t){return!(t instanceof Bt||t instanceof Lt||t instanceof zt)}var N=n("3j3K"),j=n("7rB9"),R=(n.n(j),n("ioK+")),D=(n.n(R),n("xAJs")),I=(n.n(D),n("Qbdm"));n.d(e,"f",function(){return Z}),n.d(e,"e",function(){return Q}),n.d(e,"d",function(){return J}),n.d(e,"h",function(){return tt}),n.d(e,"i",function(){return mt}),n.d(e,"g",function(){return Rt}),n.d(e,"c",function(){return pe}),n.d(e,"b",function(){return le}),n.d(e,"a",function(){return nt});var F=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},H=function(){function t(){}return Object.defineProperty(t.prototype,"control",{get:function(){throw new Error("unimplemented")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{get:function(){return this.control?this.control.value:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"valid",{get:function(){return this.control?this.control.valid:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"invalid",{get:function(){return this.control?this.control.invalid:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pending",{get:function(){return this.control?this.control.pending:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){return this.control?this.control.errors:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pristine",{get:function(){return this.control?this.control.pristine:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"dirty",{get:function(){return this.control?this.control.dirty:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"touched",{get:function(){return this.control?this.control.touched:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"untouched",{get:function(){return this.control?this.control.untouched:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return this.control?this.control.disabled:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"enabled",{get:function(){return this.control?this.control.enabled:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"statusChanges",{get:function(){return this.control?this.control.statusChanges:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"valueChanges",{get:function(){return this.control?this.control.valueChanges:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return null},enumerable:!0,configurable:!0}),t.prototype.reset=function(t){void 0===t&&(t=void 0),this.control&&this.control.reset(t)},t.prototype.hasError=function(t,e){return void 0===e&&(e=null),!!this.control&&this.control.hasError(t,e)},t.prototype.getError=function(t,e){return void 0===e&&(e=null),this.control?this.control.getError(t,e):null},t}(),L=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return F(e,t),Object.defineProperty(e.prototype,"formDirective",{get:function(){return null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return null},enumerable:!0,configurable:!0}),e}(H),U=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++){e=arguments[n];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])}return t},B=new N.D("NgValidators"),G=new N.D("NgAsyncValidators"),z=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,q=function(){function t(){}return t.required=function(t){return r(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return z.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(r(e.value))return null;var n=e.value?e.value.length:0;return n<t?{minlength:{requiredLength:t,actualLength:n}}:null}},t.maxLength=function(t){return function(e){var n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){if(!e)return t.nullValidator;var n,o;return"string"==typeof e?(o="^"+e+"$",n=new RegExp(o)):(o=e.toString(),n=e),function(t){if(r(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:o,actualValue:e}}}},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(o);return 0==e.length?null:function(t){return u(s(t,e))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(o);return 0==e.length?null:function(t){var r=a(t,e).map(i);return D.map.call(n.i(j.forkJoin)(r),u)}},t}(),Z=new N.D("NgValueAccessor"),W={provide:Z,useExisting:n.i(N._9)(function(){return K}),multi:!0},K=function(){function t(t,e){this._renderer=t,this._elementRef=e,this.onChange=function(t){},this.onTouched=function(){}}return t.prototype.writeValue=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"checked",t)},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"disabled",t)},t}();K.decorators=[{type:N.U,args:[{selector:"input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]",host:{"(change)":"onChange($event.target.checked)","(blur)":"onTouched()"},providers:[W]}]}],K.ctorParameters=function(){return[{type:N.W},{type:N.V}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var X={provide:Z,useExisting:n.i(N._9)(function(){return J}),multi:!0},Q=new N.D("CompositionEventMode"),J=function(){function t(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=function(t){},this.onTouched=function(){},this._composing=!1,null==this._compositionMode&&(this._compositionMode=!c())}return t.prototype.writeValue=function(t){var e=null==t?"":t;this._renderer.setElementProperty(this._elementRef.nativeElement,"value",e)},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype._handleInput=function(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)},t.prototype._compositionStart=function(){this._composing=!0},t.prototype._compositionEnd=function(t){this._composing=!1,this._compositionMode&&this.onChange(t)},t}();J.decorators=[{type:N.U,args:[{selector:"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]",host:{"(input)":"_handleInput($event.target.value)","(blur)":"onTouched()","(compositionstart)":"_compositionStart()","(compositionend)":"_compositionEnd($event.target.value)"},providers:[X]}]}],J.ctorParameters=function(){return[{type:N.W},{type:N.V},{type:void 0,decorators:[{type:N.H},{type:N.E,args:[Q]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var $={provide:Z,useExisting:n.i(N._9)(function(){return Y}),multi:!0},Y=function(){function t(t,e){this._renderer=t,this._elementRef=e,this.onChange=function(t){},this.onTouched=function(){}}return t.prototype.writeValue=function(t){var e=null==t?"":t;this._renderer.setElementProperty(this._elementRef.nativeElement,"value",e)},t.prototype.registerOnChange=function(t){this.onChange=function(e){t(""==e?null:parseFloat(e))}},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"disabled",t)},t}();Y.decorators=[{type:N.U,args:[{selector:"input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]",host:{"(change)":"onChange($event.target.value)","(input)":"onChange($event.target.value)","(blur)":"onTouched()"},providers:[$]}]}],Y.ctorParameters=function(){return[{type:N.W},{type:N.V}]};var tt=function(t){function e(){var e=t.apply(this,arguments)||this;return e._parent=null,e.name=null,e.valueAccessor=null,e._rawValidators=[],e._rawAsyncValidators=[],e}return F(e,t),Object.defineProperty(e.prototype,"validator",{get:function(){return f()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return f()},enumerable:!0,configurable:!0}),e.prototype.viewToModelUpdate=function(t){},e}(H),et={provide:Z,useExisting:n.i(N._9)(function(){return rt}),multi:!0},nt=function(){function t(){this._accessors=[]}return t.prototype.add=function(t,e){this._accessors.push([t,e])},t.prototype.remove=function(t){for(var e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)},t.prototype.select=function(t){var e=this;this._accessors.forEach(function(n){e._isSameGroup(n,t)&&n[1]!==t&&n[1].fireUncheck(t.value)})},t.prototype._isSameGroup=function(t,e){return!!t[0].control&&(t[0]._parent===e._control._parent&&t[1].name===e.name)},t}();nt.decorators=[{type:N.z}],nt.ctorParameters=function(){return[]};var rt=function(){function t(t,e,n,r){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(tt),this._checkName(),this._registry.add(this._control,this)},t.prototype.ngOnDestroy=function(){this._registry.remove(this)},t.prototype.writeValue=function(t){this._state=t===this.value,this._renderer.setElementProperty(this._elementRef.nativeElement,"checked",this._state)},t.prototype.registerOnChange=function(t){var e=this;this._fn=t,this.onChange=function(){t(e.value),e._registry.select(e)}},t.prototype.fireUncheck=function(t){this.writeValue(t)},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype._checkName=function(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)},t.prototype._throwNameError=function(){throw new Error('\n      If you define both a name and a formControlName attribute on your radio button, their values\n      must match. Ex: <input type="radio" formControlName="food" name="food">\n    ')},t}();rt.decorators=[{type:N.U,args:[{selector:"input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]",host:{"(change)":"onChange()","(blur)":"onTouched()"},providers:[et]}]}],rt.ctorParameters=function(){return[{type:N.W},{type:N.V},{type:nt},{type:N._10}]},rt.propDecorators={name:[{type:N.X}],formControlName:[{type:N.X}],value:[{type:N.X}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var ot={provide:Z,useExisting:n.i(N._9)(function(){return it}),multi:!0},it=function(){function t(t,e){this._renderer=t,this._elementRef=e,this.onChange=function(t){},this.onTouched=function(){}}return t.prototype.writeValue=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"value",parseFloat(t))},t.prototype.registerOnChange=function(t){this.onChange=function(e){t(""==e?null:parseFloat(e))}},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"disabled",t)},t}();it.decorators=[{type:N.U,args:[{selector:"input[type=range][formControlName],input[type=range][formControl],input[type=range][ngModel]",host:{"(change)":"onChange($event.target.value)","(input)":"onChange($event.target.value)","(blur)":"onTouched()"},providers:[ot]}]}],it.ctorParameters=function(){return[{type:N.W},{type:N.V}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var st={provide:Z,useExisting:n.i(N._9)(function(){return at}),multi:!0},at=function(){function t(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=function(t){},this.onTouched=function(){},this._compareWith=N._11}return Object.defineProperty(t.prototype,"compareWith",{set:function(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t},enumerable:!0,configurable:!0}),t.prototype.writeValue=function(t){this.value=t;var e=this._getOptionId(t);null==e&&this._renderer.setElementProperty(this._elementRef.nativeElement,"selectedIndex",-1);var n=h(e,t);this._renderer.setElementProperty(this._elementRef.nativeElement,"value",n)},t.prototype.registerOnChange=function(t){var e=this;this.onChange=function(n){e.value=n,t(e._getOptionValue(n))}},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype._registerOption=function(){return(this._idCounter++).toString()},t.prototype._getOptionId=function(t){for(var e=0,n=Array.from(this._optionMap.keys());e<n.length;e++){var r=n[e];if(this._compareWith(this._optionMap.get(r),t))return r}return null},t.prototype._getOptionValue=function(t){var e=d(t);return this._optionMap.has(e)?this._optionMap.get(e):t},t}();at.decorators=[{type:N.U,args:[{selector:"select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]",host:{"(change)":"onChange($event.target.value)","(blur)":"onTouched()"},providers:[st]}]}],at.ctorParameters=function(){return[{type:N.W},{type:N.V}]},at.propDecorators={compareWith:[{type:N.X}]};var ut=function(){function t(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption())}return Object.defineProperty(t.prototype,"ngValue",{set:function(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(h(this.id,t)),this._select.writeValue(this._select.value))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{set:function(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)},enumerable:!0,configurable:!0}),t.prototype._setElementValue=function(t){this._renderer.setElementProperty(this._element.nativeElement,"value",t)},t.prototype.ngOnDestroy=function(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))},t}();ut.decorators=[{type:N.U,args:[{selector:"option"}]}],ut.ctorParameters=function(){return[{type:N.V},{type:N.W},{type:at,decorators:[{type:N.H},{type:N._2}]}]},ut.propDecorators={ngValue:[{type:N.X,args:["ngValue"]}],value:[{type:N.X,args:["value"]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var ct={provide:Z,useExisting:n.i(N._9)(function(){return lt}),multi:!0},lt=function(){function t(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=function(t){},this.onTouched=function(){},this._compareWith=N._11}return Object.defineProperty(t.prototype,"compareWith",{set:function(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t},enumerable:!0,configurable:!0}),t.prototype.writeValue=function(t){var e=this;this.value=t;var n;if(Array.isArray(t)){var r=t.map(function(t){return e._getOptionId(t)});n=function(t,e){t._setSelected(r.indexOf(e.toString())>-1)}}else n=function(t,e){t._setSelected(!1)};this._optionMap.forEach(n)},t.prototype.registerOnChange=function(t){var e=this;this.onChange=function(n){var r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i<o.length;i++){var s=o.item(i),a=e._getOptionValue(s.value);r.push(a)}else for(var o=n.options,i=0;i<o.length;i++){var s=o.item(i);if(s.selected){var a=e._getOptionValue(s.value);r.push(a)}}e.value=r,t(r)}},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setElementProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype._registerOption=function(t){var e=(this._idCounter++).toString();return this._optionMap.set(e,t),e},t.prototype._getOptionId=function(t){for(var e=0,n=Array.from(this._optionMap.keys());e<n.length;e++){var r=n[e];if(this._compareWith(this._optionMap.get(r)._value,t))return r}return null},t.prototype._getOptionValue=function(t){var e=m(t);return this._optionMap.has(e)?this._optionMap.get(e)._value:t},t}();lt.decorators=[{type:N.U,args:[{selector:"select[multiple][formControlName],select[multiple][formControl],select[multiple][ngModel]",host:{"(change)":"onChange($event.target)","(blur)":"onTouched()"},providers:[ct]}]}],lt.ctorParameters=function(){return[{type:N.W},{type:N.V}]},lt.propDecorators={compareWith:[{type:N.X}]};var pt=function(){function t(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption(this))}return Object.defineProperty(t.prototype,"ngValue",{set:function(t){null!=this._select&&(this._value=t,this._setElementValue(y(this.id,t)),this._select.writeValue(this._select.value))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{set:function(t){this._select?(this._value=t,this._setElementValue(y(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)},enumerable:!0,configurable:!0}),t.prototype._setElementValue=function(t){this._renderer.setElementProperty(this._element.nativeElement,"value",t)},t.prototype._setSelected=function(t){this._renderer.setElementProperty(this._element.nativeElement,"selected",t)},t.prototype.ngOnDestroy=function(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))},t}();pt.decorators=[{type:N.U,args:[{selector:"option"}]}],pt.ctorParameters=function(){return[{type:N.V},{type:N.W},{type:lt,decorators:[{type:N.H},{type:N._2}]}]},pt.propDecorators={ngValue:[{type:N.X,args:["ngValue"]}],value:[{type:N.X,args:["value"]}]};var ft=[K,it,Y,at,lt,rt],ht=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return F(e,t),e.prototype.ngOnInit=function(){this._checkParentType(),this.formDirective.addFormGroup(this)},e.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeFormGroup(this)},Object.defineProperty(e.prototype,"control",{get:function(){return this.formDirective.getFormGroup(this)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return g(this.name,this._parent)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return E(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return O(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e}(L),dt=function(){function t(t){this._cd=t}return Object.defineProperty(t.prototype,"ngClassUntouched",{get:function(){return!!this._cd.control&&this._cd.control.untouched},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassTouched",{get:function(){return!!this._cd.control&&this._cd.control.touched},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassPristine",{get:function(){return!!this._cd.control&&this._cd.control.pristine},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassDirty",{get:function(){return!!this._cd.control&&this._cd.control.dirty},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassValid",{get:function(){return!!this._cd.control&&this._cd.control.valid},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassInvalid",{get:function(){return!!this._cd.control&&this._cd.control.invalid},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassPending",{get:function(){return!!this._cd.control&&this._cd.control.pending},enumerable:!0,configurable:!0}),t}(),yt={"[class.ng-untouched]":"ngClassUntouched","[class.ng-touched]":"ngClassTouched","[class.ng-pristine]":"ngClassPristine","[class.ng-dirty]":"ngClassDirty","[class.ng-valid]":"ngClassValid","[class.ng-invalid]":"ngClassInvalid","[class.ng-pending]":"ngClassPending"},mt=function(t){function e(e){return t.call(this,e)||this}return F(e,t),e}(dt);mt.decorators=[{type:N.U,args:[{selector:"[formControlName],[ngModel],[formControl]",host:yt}]}],mt.ctorParameters=function(){return[{type:tt,decorators:[{type:N._12}]}]};var gt=function(t){function e(e){return t.call(this,e)||this}return F(e,t),e}(dt);gt.decorators=[{type:N.U,args:[{selector:"[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]",host:yt}]}],gt.ctorParameters=function(){return[{type:L,decorators:[{type:N._12}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var vt="VALID",_t="INVALID",bt="PENDING",wt="DISABLED",Ct=function(){function t(t,e){this.validator=t,this.asyncValidator=e,this._onCollectionChange=function(){},this._pristine=!0,this._touched=!1,this._onDisabledChange=[]}return Object.defineProperty(t.prototype,"value",{get:function(){return this._value},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return this._parent},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"status",{get:function(){return this._status},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"valid",{get:function(){return this._status===vt},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"invalid",{get:function(){return this._status===_t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pending",{get:function(){return this._status==bt},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return this._status===wt},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"enabled",{get:function(){return this._status!==wt},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){return this._errors},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pristine",{get:function(){return this._pristine},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"dirty",{get:function(){return!this.pristine},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"touched",{get:function(){return this._touched},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"untouched",{get:function(){return!this._touched},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"valueChanges",{get:function(){return this._valueChanges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"statusChanges",{get:function(){return this._statusChanges},enumerable:!0,configurable:!0}),t.prototype.setValidators=function(t){this.validator=T(t)},t.prototype.setAsyncValidators=function(t){this.asyncValidator=k(t)},t.prototype.clearValidators=function(){this.validator=null},t.prototype.clearAsyncValidators=function(){this.asyncValidator=null},t.prototype.markAsTouched=function(t){var e=(void 0===t?{}:t).onlySelf;this._touched=!0,this._parent&&!e&&this._parent.markAsTouched({onlySelf:e})},t.prototype.markAsUntouched=function(t){var e=(void 0===t?{}:t).onlySelf;this._touched=!1,this._forEachChild(function(t){t.markAsUntouched({onlySelf:!0})}),this._parent&&!e&&this._parent._updateTouched({onlySelf:e})},t.prototype.markAsDirty=function(t){var e=(void 0===t?{}:t).onlySelf;this._pristine=!1,this._parent&&!e&&this._parent.markAsDirty({onlySelf:e})},t.prototype.markAsPristine=function(t){var e=(void 0===t?{}:t).onlySelf;this._pristine=!0,this._forEachChild(function(t){t.markAsPristine({onlySelf:!0})}),this._parent&&!e&&this._parent._updatePristine({onlySelf:e})},t.prototype.markAsPending=function(t){var e=(void 0===t?{}:t).onlySelf;this._status=bt,this._parent&&!e&&this._parent.markAsPending({onlySelf:e})},t.prototype.disable=function(t){var e=void 0===t?{}:t,n=e.onlySelf,r=e.emitEvent;this._status=wt,this._errors=null,this._forEachChild(function(t){t.disable({onlySelf:!0})}),this._updateValue(),!1!==r&&(this._valueChanges.emit(this._value),this._statusChanges.emit(this._status)),this._updateAncestors(n),this._onDisabledChange.forEach(function(t){return t(!0)})},t.prototype.enable=function(t){var e=void 0===t?{}:t,n=e.onlySelf,r=e.emitEvent;this._status=vt,this._forEachChild(function(t){t.enable({onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:r}),this._updateAncestors(n),this._onDisabledChange.forEach(function(t){return t(!1)})},t.prototype._updateAncestors=function(t){this._parent&&!t&&(this._parent.updateValueAndValidity(),this._parent._updatePristine(),this._parent._updateTouched())},t.prototype.setParent=function(t){this._parent=t},t.prototype.setValue=function(t,e){},t.prototype.patchValue=function(t,e){},t.prototype.reset=function(t,e){},t.prototype.updateValueAndValidity=function(t){var e=void 0===t?{}:t,n=e.onlySelf,r=e.emitEvent;this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this._errors=this._runValidator(),this._status=this._calculateStatus(),this._status!==vt&&this._status!==bt||this._runAsyncValidator(r)),!1!==r&&(this._valueChanges.emit(this._value),this._statusChanges.emit(this._status)),this._parent&&!n&&this._parent.updateValueAndValidity({onlySelf:n,emitEvent:r})},t.prototype._updateTreeValidity=function(t){var e=(void 0===t?{emitEvent:!0}:t).emitEvent;this._forEachChild(function(t){return t._updateTreeValidity({emitEvent:e})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e})},t.prototype._setInitialStatus=function(){this._status=this._allControlsDisabled()?wt:vt},t.prototype._runValidator=function(){return this.validator?this.validator(this):null},t.prototype._runAsyncValidator=function(t){var e=this;if(this.asyncValidator){this._status=bt;var n=i(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe(function(n){return e.setErrors(n,{emitEvent:t})})}},t.prototype._cancelExistingSubscription=function(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()},t.prototype.setErrors=function(t,e){var n=(void 0===e?{}:e).emitEvent;this._errors=t,this._updateControlsErrors(!1!==n)},t.prototype.get=function(t){return A(this,t,".")},t.prototype.getError=function(t,e){void 0===e&&(e=null);var n=e?this.get(e):this;return n&&n._errors?n._errors[t]:null},t.prototype.hasError=function(t,e){return void 0===e&&(e=null),!!this.getError(t,e)},Object.defineProperty(t.prototype,"root",{get:function(){for(var t=this;t._parent;)t=t._parent;return t},enumerable:!0,configurable:!0}),t.prototype._updateControlsErrors=function(t){this._status=this._calculateStatus(),t&&this._statusChanges.emit(this._status),this._parent&&this._parent._updateControlsErrors(t)},t.prototype._initObservables=function(){this._valueChanges=new N.R,this._statusChanges=new N.R},t.prototype._calculateStatus=function(){return this._allControlsDisabled()?wt:this._errors?_t:this._anyControlsHaveStatus(bt)?bt:this._anyControlsHaveStatus(_t)?_t:vt},t.prototype._updateValue=function(){},t.prototype._forEachChild=function(t){},t.prototype._anyControls=function(t){},t.prototype._allControlsDisabled=function(){},t.prototype._anyControlsHaveStatus=function(t){return this._anyControls(function(e){return e.status===t})},t.prototype._anyControlsDirty=function(){return this._anyControls(function(t){return t.dirty})},t.prototype._anyControlsTouched=function(){return this._anyControls(function(t){return t.touched})},t.prototype._updatePristine=function(t){var e=(void 0===t?{}:t).onlySelf;this._pristine=!this._anyControlsDirty(),this._parent&&!e&&this._parent._updatePristine({onlySelf:e})},t.prototype._updateTouched=function(t){var e=(void 0===t?{}:t).onlySelf;this._touched=this._anyControlsTouched(),this._parent&&!e&&this._parent._updateTouched({onlySelf:e})},t.prototype._isBoxedValue=function(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t},t.prototype._registerOnCollectionChange=function(t){this._onCollectionChange=t},t}(),Et=function(t){function e(e,n,r){void 0===e&&(e=null),void 0===n&&(n=null),void 0===r&&(r=null);var o=t.call(this,T(n),k(r))||this;return o._onChange=[],o._applyFormState(e),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o._initObservables(),o}return F(e,t),e.prototype.setValue=function(t,e){var n=this,r=void 0===e?{}:e,o=r.onlySelf,i=r.emitEvent,s=r.emitModelToViewChange,a=r.emitViewToModelChange;this._value=t,this._onChange.length&&!1!==s&&this._onChange.forEach(function(t){return t(n._value,!1!==a)}),this.updateValueAndValidity({onlySelf:o,emitEvent:i})},e.prototype.patchValue=function(t,e){void 0===e&&(e={}),this.setValue(t,e)},e.prototype.reset=function(t,e){void 0===t&&(t=null);var n=void 0===e?{}:e,r=n.onlySelf,o=n.emitEvent;this._applyFormState(t),this.markAsPristine({onlySelf:r}),this.markAsUntouched({onlySelf:r}),this.setValue(this._value,{onlySelf:r,emitEvent:o})},e.prototype._updateValue=function(){},e.prototype._anyControls=function(t){return!1},e.prototype._allControlsDisabled=function(){return this.disabled},e.prototype.registerOnChange=function(t){this._onChange.push(t)},e.prototype._clearChangeFns=function(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=function(){}},e.prototype.registerOnDisabledChange=function(t){this._onDisabledChange.push(t)},e.prototype._forEachChild=function(t){},e.prototype._applyFormState=function(t){this._isBoxedValue(t)?(this._value=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this._value=t},e}(Ct),Ot=function(t){function e(e,n,r){void 0===n&&(n=null),void 0===r&&(r=null);var o=t.call(this,n,r)||this;return o.controls=e,o._initObservables(),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return F(e,t),e.prototype.registerControl=function(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)},e.prototype.addControl=function(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.removeControl=function(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(function(){}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.setControl=function(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(function(){}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.contains=function(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled},e.prototype.setValue=function(t,e){var n=this,r=void 0===e?{}:e,o=r.onlySelf,i=r.emitEvent;this._checkAllValuesPresent(t),Object.keys(t).forEach(function(e){n._throwIfControlMissing(e),n.controls[e].setValue(t[e],{onlySelf:!0,emitEvent:i})}),this.updateValueAndValidity({onlySelf:o,emitEvent:i})},e.prototype.patchValue=function(t,e){var n=this,r=void 0===e?{}:e,o=r.onlySelf,i=r.emitEvent;Object.keys(t).forEach(function(e){n.controls[e]&&n.controls[e].patchValue(t[e],{onlySelf:!0,emitEvent:i})}),this.updateValueAndValidity({onlySelf:o,emitEvent:i})},e.prototype.reset=function(t,e){void 0===t&&(t={});var n=void 0===e?{}:e,r=n.onlySelf,o=n.emitEvent;this._forEachChild(function(e,n){e.reset(t[n],{onlySelf:!0,emitEvent:o})}),this.updateValueAndValidity({onlySelf:r,emitEvent:o}),this._updatePristine({onlySelf:r}),this._updateTouched({onlySelf:r})},e.prototype.getRawValue=function(){return this._reduceChildren({},function(t,e,n){return t[n]=e instanceof Et?e.value:e.getRawValue(),t})},e.prototype._throwIfControlMissing=function(t){if(!Object.keys(this.controls).length)throw new Error("\n        There are no form controls registered with this group yet.  If you're using ngModel,\n        you may want to check next tick (e.g. use setTimeout).\n      ");if(!this.controls[t])throw new Error("Cannot find form control with name: "+t+".")},e.prototype._forEachChild=function(t){var e=this;Object.keys(this.controls).forEach(function(n){return t(e.controls[n],n)})},e.prototype._setUpControls=function(){var t=this;this._forEachChild(function(e){e.setParent(t),e._registerOnCollectionChange(t._onCollectionChange)})},e.prototype._updateValue=function(){this._value=this._reduceValue()},e.prototype._anyControls=function(t){var e=this,n=!1;return this._forEachChild(function(r,o){n=n||e.contains(o)&&t(r)}),n},e.prototype._reduceValue=function(){var t=this;return this._reduceChildren({},function(e,n,r){return(n.enabled||t.disabled)&&(e[r]=n.value),e})},e.prototype._reduceChildren=function(t,e){var n=t;return this._forEachChild(function(t,r){n=e(n,t,r)}),n},e.prototype._allControlsDisabled=function(){for(var t=0,e=Object.keys(this.controls);t<e.length;t++){var n=e[t];if(this.controls[n].enabled)return!1}return Object.keys(this.controls).length>0||this.disabled},e.prototype._checkAllValuesPresent=function(t){this._forEachChild(function(e,n){if(void 0===t[n])throw new Error("Must supply a value for form control with name: '"+n+"'.")})},e}(Ct),xt=function(t){function e(e,n,r){void 0===n&&(n=null),void 0===r&&(r=null);var o=t.call(this,n,r)||this;return o.controls=e,o._initObservables(),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return F(e,t),e.prototype.at=function(t){return this.controls[t]},e.prototype.push=function(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.insert=function(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.removeAt=function(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(function(){}),this.controls.splice(t,1),this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.setControl=function(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(function(){}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()},Object.defineProperty(e.prototype,"length",{get:function(){return this.controls.length},enumerable:!0,configurable:!0}),e.prototype.setValue=function(t,e){var n=this,r=void 0===e?{}:e,o=r.onlySelf,i=r.emitEvent;this._checkAllValuesPresent(t),t.forEach(function(t,e){n._throwIfControlMissing(e),n.at(e).setValue(t,{onlySelf:!0,emitEvent:i})}),this.updateValueAndValidity({onlySelf:o,emitEvent:i})},e.prototype.patchValue=function(t,e){var n=this,r=void 0===e?{}:e,o=r.onlySelf,i=r.emitEvent;t.forEach(function(t,e){n.at(e)&&n.at(e).patchValue(t,{onlySelf:!0,emitEvent:i})}),this.updateValueAndValidity({onlySelf:o,emitEvent:i})},e.prototype.reset=function(t,e){void 0===t&&(t=[]);var n=void 0===e?{}:e,r=n.onlySelf,o=n.emitEvent;this._forEachChild(function(e,n){e.reset(t[n],{onlySelf:!0,emitEvent:o})}),this.updateValueAndValidity({onlySelf:r,emitEvent:o}),this._updatePristine({onlySelf:r}),this._updateTouched({onlySelf:r})},e.prototype.getRawValue=function(){return this.controls.map(function(t){return t instanceof Et?t.value:t.getRawValue()})},e.prototype._throwIfControlMissing=function(t){if(!this.controls.length)throw new Error("\n        There are no form controls registered with this array yet.  If you're using ngModel,\n        you may want to check next tick (e.g. use setTimeout).\n      ");if(!this.at(t))throw new Error("Cannot find form control at index "+t)},e.prototype._forEachChild=function(t){this.controls.forEach(function(e,n){t(e,n)})},e.prototype._updateValue=function(){var t=this;this._value=this.controls.filter(function(e){return e.enabled||t.disabled}).map(function(t){return t.value})},e.prototype._anyControls=function(t){return this.controls.some(function(e){return e.enabled&&t(e)})},e.prototype._setUpControls=function(){var t=this;this._forEachChild(function(e){return t._registerControl(e)})},e.prototype._checkAllValuesPresent=function(t){this._forEachChild(function(e,n){if(void 0===t[n])throw new Error("Must supply a value for form control at index: "+n+".")})},e.prototype._allControlsDisabled=function(){for(var t=0,e=this.controls;t<e.length;t++){if(e[t].enabled)return!1}return this.controls.length>0||this.disabled},e.prototype._registerControl=function(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)},e}(Ct),St={provide:L,useExisting:n.i(N._9)(function(){return At})},Pt=Promise.resolve(null),At=function(t){function e(e,n){var r=t.call(this)||this;return r._submitted=!1,r.ngSubmit=new N.R,r.form=new Ot({},E(e),O(n)),r}return F(e,t),Object.defineProperty(e.prototype,"submitted",{get:function(){return this._submitted},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"control",{get:function(){return this.form},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return[]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"controls",{get:function(){return this.form.controls},enumerable:!0,configurable:!0}),e.prototype.addControl=function(t){var e=this;Pt.then(function(){var n=e._findContainer(t.path);t._control=n.registerControl(t.name,t.control),v(t.control,t),t.control.updateValueAndValidity({emitEvent:!1})})},e.prototype.getControl=function(t){return this.form.get(t.path)},e.prototype.removeControl=function(t){var e=this;Pt.then(function(){var n=e._findContainer(t.path);n&&n.removeControl(t.name)})},e.prototype.addFormGroup=function(t){var e=this;Pt.then(function(){var n=e._findContainer(t.path),r=new Ot({});b(r,t),n.registerControl(t.name,r),r.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;Pt.then(function(){var n=e._findContainer(t.path);n&&n.removeControl(t.name)})},e.prototype.getFormGroup=function(t){return this.form.get(t.path)},e.prototype.updateModel=function(t,e){var n=this;Pt.then(function(){n.form.get(t.path).setValue(e)})},e.prototype.setValue=function(t){this.control.setValue(t)},e.prototype.onSubmit=function(t){return this._submitted=!0,this.ngSubmit.emit(t),!1},e.prototype.onReset=function(){this.resetForm()},e.prototype.resetForm=function(t){void 0===t&&(t=void 0),this.form.reset(t),this._submitted=!1},e.prototype._findContainer=function(t){return t.pop(),t.length?this.form.get(t):this.form},e}(L);At.decorators=[{type:N.U,args:[{selector:"form:not([ngNoForm]):not([formGroup]),ngForm,[ngForm]",providers:[St],host:{"(submit)":"onSubmit($event)","(reset)":"onReset()"},outputs:["ngSubmit"],exportAs:"ngForm"}]}],At.ctorParameters=function(){return[{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[B]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[G]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Tt={formControlName:'\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    });',formGroupName:'\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    });',formArrayName:'\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    });',ngModelGroup:'\n    <form>\n       <div ngModelGroup="person">\n          <input [(ngModel)]="person.name" name="firstName">\n       </div>\n    </form>',ngModelWithFormGroup:'\n    <div [formGroup]="myGroup">\n       <input formControlName="firstName">\n       <input [(ngModel)]="showMoreControls" [ngModelOptions]="{standalone: true}">\n    </div>\n  '},kt=function(){function t(){}return t.modelParentException=function(){throw new Error('\n      ngModel cannot be used to register form controls with a parent formGroup directive.  Try using\n      formGroup\'s partner directive "formControlName" instead.  Example:\n\n      '+Tt.formControlName+"\n\n      Or, if you'd like to avoid registering this form control, indicate that it's standalone in ngModelOptions:\n\n      Example:\n\n      "+Tt.ngModelWithFormGroup)},t.formGroupNameException=function(){throw new Error("\n      ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n      Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n      "+Tt.formGroupName+"\n\n      Option 2:  Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n      "+Tt.ngModelGroup)},t.missingNameException=function(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n      control must be defined as \'standalone\' in ngModelOptions.\n\n      Example 1: <input [(ngModel)]="person.firstName" name="first">\n      Example 2: <input [(ngModel)]="person.firstName" [ngModelOptions]="{standalone: true}">')},t.modelGroupParentException=function(){throw new Error("\n      ngModelGroup cannot be used with a parent formGroup directive.\n\n      Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n      "+Tt.formGroupName+"\n\n      Option 2:  Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n      "+Tt.ngModelGroup)},t}(),Vt={provide:L,useExisting:n.i(N._9)(function(){return Mt})},Mt=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}return F(e,t),e.prototype._checkParentType=function(){this._parent instanceof e||this._parent instanceof At||kt.modelGroupParentException()},e}(ht);Mt.decorators=[{type:N.U,args:[{selector:"[ngModelGroup]",providers:[Vt],exportAs:"ngModelGroup"}]}],Mt.ctorParameters=function(){return[{type:L,decorators:[{type:N._2},{type:N.Q}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[B]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[G]}]}]},Mt.propDecorators={name:[{type:N.X,args:["ngModelGroup"]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Nt={provide:tt,useExisting:n.i(N._9)(function(){return Rt})},jt=Promise.resolve(null),Rt=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i._control=new Et,i._registered=!1,i.update=new N.R,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=P(i,o),i}return F(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),x(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)},e.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeControl(this)},Object.defineProperty(e.prototype,"control",{get:function(){return this._control},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return this._parent?g(this.name,this._parent):[this.name]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return E(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return O(this._rawAsyncValidators)},enumerable:!0,configurable:!0}),e.prototype.viewToModelUpdate=function(t){this.viewModel=t,this.update.emit(t)},e.prototype._setUpControl=function(){this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0},e.prototype._isStandalone=function(){return!this._parent||this.options&&this.options.standalone},e.prototype._setUpStandalone=function(){v(this._control,this),this._control.updateValueAndValidity({emitEvent:!1})},e.prototype._checkForErrors=function(){this._isStandalone()||this._checkParentType(),this._checkName()},e.prototype._checkParentType=function(){!(this._parent instanceof Mt)&&this._parent instanceof ht?kt.formGroupNameException():this._parent instanceof Mt||this._parent instanceof At||kt.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||kt.missingNameException()},e.prototype._updateValue=function(t){var e=this;jt.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,r=""===n||n&&"false"!==n;jt.then(function(){r&&!e.control.disabled?e.control.disable():!r&&e.control.disabled&&e.control.enable()})},e}(tt);Rt.decorators=[{type:N.U,args:[{selector:"[ngModel]:not([formControlName]):not([formControl])",providers:[Nt],exportAs:"ngModel"}]}],Rt.ctorParameters=function(){return[{type:L,decorators:[{type:N.H},{type:N._2}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[B]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[G]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[Z]}]}]},Rt.propDecorators={name:[{type:N.X}],isDisabled:[{type:N.X,args:["disabled"]}],model:[{type:N.X,args:["ngModel"]}],options:[{type:N.X,args:["ngModelOptions"]}],update:[{type:N._13,args:["ngModelChange"]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Dt=function(){function t(){}return t.controlParentException=function(){throw new Error("formControlName must be used with a parent formGroup directive.  You'll want to add a formGroup\n       directive and pass it an existing FormGroup instance (you can create one in your class).\n\n      Example:\n\n      "+Tt.formControlName)},t.ngModelGroupException=function(){throw new Error('formControlName cannot be used with an ngModelGroup parent. It is only compatible with parents\n       that also have a "form" prefix: formGroupName, formArrayName, or formGroup.\n\n       Option 1:  Update the parent to be formGroupName (reactive form strategy)\n\n        '+Tt.formGroupName+"\n\n        Option 2: Use ngModel instead of formControlName (template-driven strategy)\n\n        "+Tt.ngModelGroup)},t.missingFormException=function(){throw new Error("formGroup expects a FormGroup instance. Please pass one in.\n\n       Example:\n\n       "+Tt.formControlName)},t.groupParentException=function(){throw new Error("formGroupName must be used with a parent formGroup directive.  You'll want to add a formGroup\n      directive and pass it an existing FormGroup instance (you can create one in your class).\n\n      Example:\n\n      "+Tt.formGroupName)},t.arrayParentException=function(){throw new Error("formArrayName must be used with a parent formGroup directive.  You'll want to add a formGroup\n       directive and pass it an existing FormGroup instance (you can create one in your class).\n\n        Example:\n\n        "+Tt.formArrayName)},t.disabledAttrWarning=function(){console.warn("\n      It looks like you're using the disabled attribute with a reactive form directive. If you set disabled to true\n      when you set up this control in your component class, the disabled attribute will actually be set in the DOM for\n      you. We recommend using this approach to avoid 'changed after checked' errors.\n       \n      Example: \n      form = new FormGroup({\n        first: new FormControl({value: 'Nancy', disabled: true}, Validators.required),\n        last: new FormControl('Drew', Validators.required)\n      });\n    ")},t}(),It={provide:tt,useExisting:n.i(N._9)(function(){return Ft})},Ft=function(t){function e(e,n,r){var o=t.call(this)||this;return o.update=new N.R,o._rawValidators=e||[],o._rawAsyncValidators=n||[],o.valueAccessor=P(o,r),o}return F(e,t),Object.defineProperty(e.prototype,"isDisabled",{set:function(t){Dt.disabledAttrWarning()},enumerable:!0,configurable:!0}),e.prototype.ngOnChanges=function(t){this._isControlChanged(t)&&(v(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})),x(t,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)},Object.defineProperty(e.prototype,"path",{get:function(){return[]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return E(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return O(this._rawAsyncValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"control",{get:function(){return this.form},enumerable:!0,configurable:!0}),e.prototype.viewToModelUpdate=function(t){this.viewModel=t,this.update.emit(t)},e.prototype._isControlChanged=function(t){return t.hasOwnProperty("form")},e}(tt);Ft.decorators=[{type:N.U,args:[{selector:"[formControl]",providers:[It],exportAs:"ngForm"}]}],Ft.ctorParameters=function(){return[{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[B]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[G]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[Z]}]}]},Ft.propDecorators={form:[{type:N.X,args:["formControl"]}],model:[{type:N.X,args:["ngModel"]}],update:[{type:N._13,args:["ngModelChange"]}],isDisabled:[{type:N.X,args:["disabled"]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Ht={provide:L,useExisting:n.i(N._9)(function(){return Lt})},Lt=function(t){function e(e,n){var r=t.call(this)||this;return r._validators=e,r._asyncValidators=n,r._submitted=!1,r.directives=[],r.form=null,r.ngSubmit=new N.R,r}return F(e,t),e.prototype.ngOnChanges=function(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations())},Object.defineProperty(e.prototype,"submitted",{get:function(){return this._submitted},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"control",{get:function(){return this.form},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.addControl=function(t){var e=this.form.get(t.path);return v(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e},e.prototype.getControl=function(t){return this.form.get(t.path)},e.prototype.removeControl=function(t){V(this.directives,t)},e.prototype.addFormGroup=function(t){var e=this.form.get(t.path);b(e,t),e.updateValueAndValidity({emitEvent:!1})},e.prototype.removeFormGroup=function(t){},e.prototype.getFormGroup=function(t){return this.form.get(t.path)},e.prototype.addFormArray=function(t){var e=this.form.get(t.path);b(e,t),e.updateValueAndValidity({emitEvent:!1})},e.prototype.removeFormArray=function(t){},e.prototype.getFormArray=function(t){return this.form.get(t.path)},e.prototype.updateModel=function(t,e){this.form.get(t.path).setValue(e)},e.prototype.onSubmit=function(t){return this._submitted=!0,this.ngSubmit.emit(t),!1},e.prototype.onReset=function(){this.resetForm()},e.prototype.resetForm=function(t){void 0===t&&(t=void 0),this.form.reset(t),this._submitted=!1},e.prototype._updateDomValue=function(){var t=this;this.directives.forEach(function(e){var n=t.form.get(e.path);e._control!==n&&(_(e._control,e),n&&v(n,e),e._control=n)}),this.form._updateTreeValidity({emitEvent:!1})},e.prototype._updateRegistrations=function(){var t=this;this.form._registerOnCollectionChange(function(){return t._updateDomValue()}),this._oldForm&&this._oldForm._registerOnCollectionChange(function(){}),this._oldForm=this.form},e.prototype._updateValidators=function(){var t=E(this._validators);this.form.validator=q.compose([this.form.validator,t]);var e=O(this._asyncValidators);this.form.asyncValidator=q.composeAsync([this.form.asyncValidator,e])},e.prototype._checkFormPresent=function(){this.form||Dt.missingFormException()},e}(L);Lt.decorators=[{type:N.U,args:[{selector:"[formGroup]",providers:[Ht],host:{"(submit)":"onSubmit($event)","(reset)":"onReset()"},exportAs:"ngForm"}]}],Lt.ctorParameters=function(){return[{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[B]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[G]}]}]},Lt.propDecorators={form:[{type:N.X,args:["formGroup"]}],ngSubmit:[{type:N._13}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Ut={provide:L,useExisting:n.i(N._9)(function(){return Bt})},Bt=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}return F(e,t),e.prototype._checkParentType=function(){M(this._parent)&&Dt.groupParentException()},e}(ht);Bt.decorators=[{type:N.U,args:[{selector:"[formGroupName]",providers:[Ut]}]}],Bt.ctorParameters=function(){return[{type:L,decorators:[{type:N.H},{type:N._2},{type:N.Q}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[B]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[G]}]}]},Bt.propDecorators={name:[{type:N.X,args:["formGroupName"]}]};var Gt={provide:L,useExisting:n.i(N._9)(function(){return zt})},zt=function(t){function e(e,n,r){var o=t.call(this)||this;return o._parent=e,o._validators=n,o._asyncValidators=r,o}return F(e,t),e.prototype.ngOnInit=function(){this._checkParentType(),this.formDirective.addFormArray(this)},e.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeFormArray(this)},Object.defineProperty(e.prototype,"control",{get:function(){return this.formDirective.getFormArray(this)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return g(this.name,this._parent)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return E(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return O(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){M(this._parent)&&Dt.arrayParentException()},e}(L);zt.decorators=[{type:N.U,args:[{selector:"[formArrayName]",providers:[Gt]}]}],zt.ctorParameters=function(){return[{type:L,decorators:[{type:N.H},{type:N._2},{type:N.Q}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[B]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[G]}]}]},zt.propDecorators={name:[{type:N.X,args:["formArrayName"]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var qt={provide:tt,useExisting:n.i(N._9)(function(){return Zt})},Zt=function(t){function e(e,n,r,o){var i=t.call(this)||this;return i._added=!1,i.update=new N.R,i._parent=e,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=P(i,o),i}return F(e,t),Object.defineProperty(e.prototype,"isDisabled",{set:function(t){Dt.disabledAttrWarning()},enumerable:!0,configurable:!0}),e.prototype.ngOnChanges=function(t){this._added||this._setUpControl(),x(t,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))},e.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeControl(this)},e.prototype.viewToModelUpdate=function(t){this.viewModel=t,this.update.emit(t)},Object.defineProperty(e.prototype,"path",{get:function(){return g(this.name,this._parent)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return E(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return O(this._rawAsyncValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"control",{get:function(){return this._control},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){!(this._parent instanceof Bt)&&this._parent instanceof ht?Dt.ngModelGroupException():this._parent instanceof Bt||this._parent instanceof Lt||this._parent instanceof zt||Dt.controlParentException()},e.prototype._setUpControl=function(){this._checkParentType(),this._control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0},e}(tt);Zt.decorators=[{type:N.U,args:[{selector:"[formControlName]",providers:[qt]}]}],Zt.ctorParameters=function(){return[{type:L,decorators:[{type:N.H},{type:N._2},{type:N.Q}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[B]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[G]}]},{type:Array,decorators:[{type:N.H},{type:N._12},{type:N.E,args:[Z]}]}]},Zt.propDecorators={name:[{type:N.X,args:["formControlName"]}],model:[{type:N.X,args:["ngModel"]}],update:[{type:N._13,args:["ngModelChange"]}],isDisabled:[{type:N.X,args:["disabled"]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Wt={provide:B,useExisting:n.i(N._9)(function(){return Xt}),multi:!0},Kt={provide:B,useExisting:n.i(N._9)(function(){return Qt}),multi:!0},Xt=function(){function t(){}return Object.defineProperty(t.prototype,"required",{get:function(){return this._required},set:function(t){this._required=null!=t&&!1!==t&&""+t!="false",this._onChange&&this._onChange()},enumerable:!0,configurable:!0}),t.prototype.validate=function(t){return this.required?q.required(t):null},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},t}();Xt.decorators=[{type:N.U,args:[{selector:":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]",providers:[Wt],host:{"[attr.required]":'required ? "" : null'}}]}],Xt.ctorParameters=function(){return[]},Xt.propDecorators={required:[{type:N.X}]};var Qt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return F(e,t),e.prototype.validate=function(t){return this.required?q.requiredTrue(t):null},e}(Xt);Qt.decorators=[{type:N.U,args:[{selector:"input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]",providers:[Kt],host:{"[attr.required]":'required ? "" : null'}}]}],Qt.ctorParameters=function(){return[]};var Jt={provide:B,useExisting:n.i(N._9)(function(){return $t}),multi:!0},$t=function(){function t(){}return Object.defineProperty(t.prototype,"email",{set:function(t){this._enabled=""===t||!0===t||"true"===t,this._onChange&&this._onChange()},enumerable:!0,configurable:!0}),t.prototype.validate=function(t){return this._enabled?q.email(t):null},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},t}();$t.decorators=[{type:N.U,args:[{selector:"[email][formControlName],[email][formControl],[email][ngModel]",providers:[Jt]}]}],$t.ctorParameters=function(){return[]},$t.propDecorators={email:[{type:N.X}]};var Yt={provide:B,useExisting:n.i(N._9)(function(){return te}),multi:!0},te=function(){function t(){}return t.prototype.ngOnChanges=function(t){"minlength"in t&&(this._createValidator(),this._onChange&&this._onChange())},t.prototype.validate=function(t){return null==this.minlength?null:this._validator(t)},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},t.prototype._createValidator=function(){this._validator=q.minLength(parseInt(this.minlength,10))},t}();te.decorators=[{type:N.U,args:[{selector:"[minlength][formControlName],[minlength][formControl],[minlength][ngModel]",providers:[Yt],host:{"[attr.minlength]":"minlength ? minlength : null"}}]}],te.ctorParameters=function(){return[]},te.propDecorators={minlength:[{type:N.X}]};var ee={provide:B,useExisting:n.i(N._9)(function(){return ne}),multi:!0},ne=function(){function t(){}return t.prototype.ngOnChanges=function(t){"maxlength"in t&&(this._createValidator(),this._onChange&&this._onChange())},t.prototype.validate=function(t){return null!=this.maxlength?this._validator(t):null},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},t.prototype._createValidator=function(){this._validator=q.maxLength(parseInt(this.maxlength,10))},t}();ne.decorators=[{type:N.U,args:[{selector:"[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]",providers:[ee],host:{"[attr.maxlength]":"maxlength ? maxlength : null"}}]}],ne.ctorParameters=function(){return[]},ne.propDecorators={maxlength:[{type:N.X}]};var re={provide:B,useExisting:n.i(N._9)(function(){return oe}),multi:!0},oe=function(){function t(){}return t.prototype.ngOnChanges=function(t){"pattern"in t&&(this._createValidator(),this._onChange&&this._onChange())},t.prototype.validate=function(t){return this._validator(t)},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},t.prototype._createValidator=function(){this._validator=q.pattern(this.pattern)},t}();oe.decorators=[{type:N.U,args:[{selector:"[pattern][formControlName],[pattern][formControl],[pattern][ngModel]",providers:[re],host:{"[attr.pattern]":"pattern ? pattern : null"}}]}],oe.ctorParameters=function(){return[]},oe.propDecorators={pattern:[{type:N.X}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var ie=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),r=null!=e?e.validator:null,o=null!=e?e.asyncValidator:null;return new Ot(n,r,o)},t.prototype.control=function(t,e,n){return void 0===e&&(e=null),void 0===n&&(n=null),new Et(t,e,n)},t.prototype.array=function(t,e,n){var r=this;void 0===e&&(e=null),void 0===n&&(n=null);var o=t.map(function(t){return r._createControl(t)});return new xt(o,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(r){n[r]=e._createControl(t[r])}),n},t.prototype._createControl=function(t){if(t instanceof Et||t instanceof Ot||t instanceof xt)return t;if(Array.isArray(t)){var e=t[0],n=t.length>1?t[1]:null,r=t.length>2?t[2]:null;return this.control(e,n,r)}return this.control(t)},t}();ie.decorators=[{type:N.z}],ie.ctorParameters=function(){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
+ */
+var se=(new N.B("4.0.2"),function(){function t(){}return t}());se.decorators=[{type:N.U,args:[{selector:"form:not([ngNoForm]):not([ngNativeValidate])",host:{novalidate:""}}]}],se.ctorParameters=function(){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
+ */
+var ae=[se,ut,pt,J,Y,it,K,at,lt,rt,mt,gt,Xt,te,ne,oe,Qt,$t],ue=[Rt,Mt,At],ce=[Ft,Lt,Zt,Bt,zt],le=function(){function t(){}return t}();le.decorators=[{type:N.A,args:[{declarations:ae,exports:ae}]}],le.ctorParameters=function(){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
+ */
+var pe=function(){function t(){}return t}();pe.decorators=[{type:N.A,args:[{declarations:ue,providers:[nt],exports:[le,ue]}]}],pe.ctorParameters=function(){return[]};var fe=function(){function t(){}return t}();fe.decorators=[{type:N.A,args:[{declarations:[ce],providers:[ie,nt],exports:[le,ce]}]}],fe.ctorParameters=function(){return[]}},Qbdm:function(t,e,n){"use strict";function r(){return I}function o(t){I||(I=t)}function i(){return Z||(Z=document.querySelector("base"))?Z.getAttribute("href"):null}function s(t){return z||(z=document.createElement("a")),z.setAttribute("href",t),"/"===z.pathname.charAt(0)?z.pathname:"/"+z.pathname}function a(t,e){e=encodeURIComponent(e);for(var n=0,r=t.split(";");n<r.length;n++){var o=r[n],i=o.indexOf("="),s=-1==i?[o,""]:[o.slice(0,i),o.slice(i+1)],a=s[0],u=s[1];if(a.trim()===e)return decodeURIComponent(u)}return null}function u(t,e,n){for(var r=e.split("."),o=t;r.length>1;){var i=r.shift();o=o.hasOwnProperty(i)&&null!=o[i]?o[i]:o[i]={}}void 0!==o&&null!==o||(o={}),o[r.shift()]=n}/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ * @return {?}
+ */
+function c(){return!!window.history.pushState}function l(t,e){return function(){var n=r();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(function(e){return n.getAttribute(e,"ng-transition")===t}).forEach(function(t){return n.remove(t)})}}function p(t){return n.i(j.G)(t)}function f(t,e){var n=(t||[]).concat(e||[]);return r().setGlobalVar(nt,p),r().setGlobalVar(rt,tt({},et,h(n||[]))),function(){return p}}function h(t){return t.reduce(function(t,e){return t[e.name]=e.token,t},{})}function d(t){return yt.replace(ft,t)}function y(t){return dt.replace(ft,t)}function m(t,e,n){for(var r=0;r<e.length;r++){var o=e[r];Array.isArray(o)?m(t,o,n):(o=o.replace(ft,t),n.push(o))}return n}function g(t){return function(e){!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}function v(t,e){if(t.charCodeAt(0)===vt)throw new Error("Found the synthetic "+e+" "+t+'. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.')}function _(t){return t=String(t),t.match(Tt)||t.match(kt)?t:(n.i(j.K)()&&r().log("WARNING: sanitizing unsafe URL value "+t+" (see http://g.co/ng/security#xss)"),"unsafe:"+t)}function b(t){return t=String(t),t.split(",").map(function(t){return _(t.trim())}).join(", ")}function w(){if(Vt)return Vt;Mt=r();var t=Mt.createElement("template");if("content"in t)return t;var e=Mt.createHtmlDocument();if(null==(Vt=Mt.querySelector(e,"body"))){var n=Mt.createElement("html",e);Vt=Mt.createElement("body",e),Mt.appendChild(n,Vt),Mt.appendChild(e,n)}return Vt}function C(t){for(var e={},n=0,r=t.split(",");n<r.length;n++){e[r[n]]=!0}return e}function E(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n={},r=0,o=t;r<o.length;r++){var i=o[r];for(var s in i)i.hasOwnProperty(s)&&(n[s]=!0)}return n}function O(t,e){if(e&&Mt.contains(t,e))throw new Error("Failed to sanitize html because the element is clobbered: "+Mt.getOuterHTML(t));return e}function x(t){return t.replace(/&/g,"&amp;").replace(qt,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Zt,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function S(t){Mt.attributeMap(t).forEach(function(e,n){"xmlns:ns1"!==n&&0!==n.indexOf("ns1:")||Mt.removeAttribute(t,n)});for(var e=0,n=Mt.childNodesAsList(t);e<n.length;e++){var r=n[e];Mt.isElementNode(r)&&S(r)}}function P(t,e){try{var r=w(),o=e?String(e):"",i=5,s=o;do{if(0===i)throw new Error("Failed to sanitize html because the input is unstable");i--,o=s,Mt.setInnerHTML(r,o),t.documentMode&&S(r),s=Mt.getInnerHTML(r)}while(o!==s);for(var a=new zt,u=a.sanitizeChildren(Mt.getTemplateContent(r)||r),c=Mt.getTemplateContent(r)||r,l=0,p=Mt.childNodesAsList(c);l<p.length;l++){var f=p[l];Mt.removeChild(c,f)}return n.i(j.K)()&&a.sanitizedSomething&&Mt.log("WARNING: sanitizing HTML stripped some content (see http://g.co/ng/security#xss)."),u}catch(t){throw Vt=null,t}}function A(t){for(var e=!0,n=!0,r=0;r<t.length;r++){var o=t.charAt(r);"'"===o&&n?e=!e:'"'===o&&e&&(n=!n)}return e&&n}function T(t){if(!(t=String(t).trim()))return"";var e=t.match(te);return e&&_(e[1])===e[1]||t.match(Yt)&&A(t)?t:(n.i(j.K)()&&r().log("WARNING: sanitizing unsafe style value "+t+" (see http://g.co/ng/security#xss)."),"unsafe")}function k(){q.makeCurrent(),$.init()}function V(){return new j.p}function M(){return document}var N=n("2Je8"),j=n("3j3K");n.d(e,"p",function(){return fe}),n.d(e,"a",function(){return pe}),n.d(e,"k",function(){return X}),n.d(e,"l",function(){return Y}),n.d(e,"o",function(){return ot}),n.d(e,"c",function(){return W}),n.d(e,"s",function(){return st}),n.d(e,"h",function(){return at}),n.d(e,"r",function(){return Et}),n.d(e,"d",function(){return Ot}),n.d(e,"q",function(){return ee}),n.d(e,"u",function(){return r}),n.d(e,"j",function(){return mt}),n.d(e,"e",function(){return wt}),n.d(e,"g",function(){return xt}),n.d(e,"f",function(){return At}),n.d(e,"i",function(){return lt}),n.d(e,"t",function(){return ct}),n.d(e,"m",function(){return V}),n.d(e,"n",function(){return f}),n.d(e,"b",function(){return ne});var R,D=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},I=null,F=function(){function t(){this.resourceLoaderType=null}return t.prototype.hasProperty=function(t,e){},t.prototype.setProperty=function(t,e,n){},t.prototype.getProperty=function(t,e){},t.prototype.invoke=function(t,e,n){},t.prototype.logError=function(t){},t.prototype.log=function(t){},t.prototype.logGroup=function(t){},t.prototype.logGroupEnd=function(){},Object.defineProperty(t.prototype,"attrToPropMap",{get:function(){return this._attrToPropMap},set:function(t){this._attrToPropMap=t},enumerable:!0,configurable:!0}),t.prototype.contains=function(t,e){},t.prototype.parse=function(t){},t.prototype.querySelector=function(t,e){},t.prototype.querySelectorAll=function(t,e){},t.prototype.on=function(t,e,n){},t.prototype.onAndCancel=function(t,e,n){},t.prototype.dispatchEvent=function(t,e){},t.prototype.createMouseEvent=function(t){},t.prototype.createEvent=function(t){},t.prototype.preventDefault=function(t){},t.prototype.isPrevented=function(t){},t.prototype.getInnerHTML=function(t){},t.prototype.getTemplateContent=function(t){},t.prototype.getOuterHTML=function(t){},t.prototype.nodeName=function(t){},t.prototype.nodeValue=function(t){},t.prototype.type=function(t){},t.prototype.content=function(t){},t.prototype.firstChild=function(t){},t.prototype.nextSibling=function(t){},t.prototype.parentElement=function(t){},t.prototype.childNodes=function(t){},t.prototype.childNodesAsList=function(t){},t.prototype.clearNodes=function(t){},t.prototype.appendChild=function(t,e){},t.prototype.removeChild=function(t,e){},t.prototype.replaceChild=function(t,e,n){},t.prototype.remove=function(t){},t.prototype.insertBefore=function(t,e,n){},t.prototype.insertAllBefore=function(t,e,n){},t.prototype.insertAfter=function(t,e,n){},t.prototype.setInnerHTML=function(t,e){},t.prototype.getText=function(t){},t.prototype.setText=function(t,e){},t.prototype.getValue=function(t){},t.prototype.setValue=function(t,e){},t.prototype.getChecked=function(t){},t.prototype.setChecked=function(t,e){},t.prototype.createComment=function(t){},t.prototype.createTemplate=function(t){},t.prototype.createElement=function(t,e){},t.prototype.createElementNS=function(t,e,n){},t.prototype.createTextNode=function(t,e){},t.prototype.createScriptTag=function(t,e,n){},t.prototype.createStyleElement=function(t,e){},t.prototype.createShadowRoot=function(t){},t.prototype.getShadowRoot=function(t){},t.prototype.getHost=function(t){},t.prototype.getDistributedNodes=function(t){},t.prototype.clone=function(t){},t.prototype.getElementsByClassName=function(t,e){},t.prototype.getElementsByTagName=function(t,e){},t.prototype.classList=function(t){},t.prototype.addClass=function(t,e){},t.prototype.removeClass=function(t,e){},t.prototype.hasClass=function(t,e){},t.prototype.setStyle=function(t,e,n){},t.prototype.removeStyle=function(t,e){},t.prototype.getStyle=function(t,e){},t.prototype.hasStyle=function(t,e,n){},t.prototype.tagName=function(t){},t.prototype.attributeMap=function(t){},t.prototype.hasAttribute=function(t,e){},t.prototype.hasAttributeNS=function(t,e,n){},t.prototype.getAttribute=function(t,e){},t.prototype.getAttributeNS=function(t,e,n){},t.prototype.setAttribute=function(t,e,n){},t.prototype.setAttributeNS=function(t,e,n,r){},t.prototype.removeAttribute=function(t,e){},t.prototype.removeAttributeNS=function(t,e,n){},t.prototype.templateAwareRoot=function(t){},t.prototype.createHtmlDocument=function(){},t.prototype.getBoundingClientRect=function(t){},t.prototype.getTitle=function(t){},t.prototype.setTitle=function(t,e){},t.prototype.elementMatches=function(t,e){},t.prototype.isTemplateElement=function(t){},t.prototype.isTextNode=function(t){},t.prototype.isCommentNode=function(t){},t.prototype.isElementNode=function(t){},t.prototype.hasShadowRoot=function(t){},t.prototype.isShadowRoot=function(t){},t.prototype.importIntoDoc=function(t){},t.prototype.adoptNode=function(t){},t.prototype.getHref=function(t){},t.prototype.getEventKey=function(t){},t.prototype.resolveAndSetHref=function(t,e,n){},t.prototype.supportsDOMEvents=function(){},t.prototype.supportsNativeShadowDOM=function(){},t.prototype.getGlobalEventTarget=function(t,e){},t.prototype.getHistory=function(){},t.prototype.getLocation=function(){},t.prototype.getBaseHref=function(t){},t.prototype.resetBaseElement=function(){},t.prototype.getUserAgent=function(){},t.prototype.setData=function(t,e,n){},t.prototype.getComputedStyle=function(t){},t.prototype.getData=function(t,e){},t.prototype.setGlobalVar=function(t,e){},t.prototype.supportsWebAnimation=function(){},t.prototype.performanceNow=function(){},t.prototype.getAnimationPrefix=function(){},t.prototype.getTransitionEnd=function(){},t.prototype.supportsAnimation=function(){},t.prototype.supportsCookies=function(){},t.prototype.getCookie=function(t){},t.prototype.setCookie=function(t,e){},t}(),H=function(t){function e(){var e=t.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var n=e.createElement("div",document);if(null!=e.getStyle(n,"animationName"))e._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o<r.length;o++)if(null!=e.getStyle(n,r[o]+"AnimationName")){e._animationPrefix="-"+r[o].toLowerCase()+"-";break}var i={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};Object.keys(i).forEach(function(t){null!=e.getStyle(n,t)&&(e._transitionEnd=i[t])})}catch(t){e._animationPrefix=null,e._transitionEnd=null}return e}return D(e,t),e.prototype.getDistributedNodes=function(t){return t.getDistributedNodes()},e.prototype.resolveAndSetHref=function(t,e,n){t.href=null==n?e:e+"/../"+n},e.prototype.supportsDOMEvents=function(){return!0},e.prototype.supportsNativeShadowDOM=function(){return"function"==typeof document.body.createShadowRoot},e.prototype.getAnimationPrefix=function(){return this._animationPrefix?this._animationPrefix:""},e.prototype.getTransitionEnd=function(){return this._transitionEnd?this._transitionEnd:""},e.prototype.supportsAnimation=function(){return null!=this._animationPrefix&&null!=this._transitionEnd},e}(F),L={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},U=3,B={"\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"},G={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"};j.C.Node&&(R=j.C.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))});var z,q=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return D(e,t),e.prototype.parse=function(t){throw new Error("parse not implemented")},e.makeCurrent=function(){o(new e)},e.prototype.hasProperty=function(t,e){return e in t},e.prototype.setProperty=function(t,e,n){t[e]=n},e.prototype.getProperty=function(t,e){return t[e]},e.prototype.invoke=function(t,e,n){t[e].apply(t,n)},e.prototype.logError=function(t){window.console&&(console.error?console.error(t):console.log(t))},e.prototype.log=function(t){window.console&&window.console.log&&window.console.log(t)},e.prototype.logGroup=function(t){window.console&&window.console.group&&window.console.group(t)},e.prototype.logGroupEnd=function(){window.console&&window.console.groupEnd&&window.console.groupEnd()},Object.defineProperty(e.prototype,"attrToPropMap",{get:function(){return L},enumerable:!0,configurable:!0}),e.prototype.contains=function(t,e){return R.call(t,e)},e.prototype.querySelector=function(t,e){return t.querySelector(e)},e.prototype.querySelectorAll=function(t,e){return t.querySelectorAll(e)},e.prototype.on=function(t,e,n){t.addEventListener(e,n,!1)},e.prototype.onAndCancel=function(t,e,n){return t.addEventListener(e,n,!1),function(){t.removeEventListener(e,n,!1)}},e.prototype.dispatchEvent=function(t,e){t.dispatchEvent(e)},e.prototype.createMouseEvent=function(t){var e=document.createEvent("MouseEvent");return e.initEvent(t,!0,!0),e},e.prototype.createEvent=function(t){var e=document.createEvent("Event");return e.initEvent(t,!0,!0),e},e.prototype.preventDefault=function(t){t.preventDefault(),t.returnValue=!1},e.prototype.isPrevented=function(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue},e.prototype.getInnerHTML=function(t){return t.innerHTML},e.prototype.getTemplateContent=function(t){return"content"in t&&t instanceof HTMLTemplateElement?t.content:null},e.prototype.getOuterHTML=function(t){return t.outerHTML},e.prototype.nodeName=function(t){return t.nodeName},e.prototype.nodeValue=function(t){return t.nodeValue},e.prototype.type=function(t){return t.type},e.prototype.content=function(t){return this.hasProperty(t,"content")?t.content:t},e.prototype.firstChild=function(t){return t.firstChild},e.prototype.nextSibling=function(t){return t.nextSibling},e.prototype.parentElement=function(t){return t.parentNode},e.prototype.childNodes=function(t){return t.childNodes},e.prototype.childNodesAsList=function(t){for(var e=t.childNodes,n=new Array(e.length),r=0;r<e.length;r++)n[r]=e[r];return n},e.prototype.clearNodes=function(t){for(;t.firstChild;)t.removeChild(t.firstChild)},e.prototype.appendChild=function(t,e){t.appendChild(e)},e.prototype.removeChild=function(t,e){t.removeChild(e)},e.prototype.replaceChild=function(t,e,n){t.replaceChild(e,n)},e.prototype.remove=function(t){return t.parentNode&&t.parentNode.removeChild(t),t},e.prototype.insertBefore=function(t,e,n){t.insertBefore(n,e)},e.prototype.insertAllBefore=function(t,e,n){n.forEach(function(n){return t.insertBefore(n,e)})},e.prototype.insertAfter=function(t,e,n){t.insertBefore(n,e.nextSibling)},e.prototype.setInnerHTML=function(t,e){t.innerHTML=e},e.prototype.getText=function(t){return t.textContent},e.prototype.setText=function(t,e){t.textContent=e},e.prototype.getValue=function(t){return t.value},e.prototype.setValue=function(t,e){t.value=e},e.prototype.getChecked=function(t){return t.checked},e.prototype.setChecked=function(t,e){t.checked=e},e.prototype.createComment=function(t){return document.createComment(t)},e.prototype.createTemplate=function(t){var e=document.createElement("template");return e.innerHTML=t,e},e.prototype.createElement=function(t,e){return void 0===e&&(e=document),e.createElement(t)},e.prototype.createElementNS=function(t,e,n){return void 0===n&&(n=document),n.createElementNS(t,e)},e.prototype.createTextNode=function(t,e){return void 0===e&&(e=document),e.createTextNode(t)},e.prototype.createScriptTag=function(t,e,n){void 0===n&&(n=document);var r=n.createElement("SCRIPT");return r.setAttribute(t,e),r},e.prototype.createStyleElement=function(t,e){void 0===e&&(e=document);var n=e.createElement("style");return this.appendChild(n,this.createTextNode(t)),n},e.prototype.createShadowRoot=function(t){return t.createShadowRoot()},e.prototype.getShadowRoot=function(t){return t.shadowRoot},e.prototype.getHost=function(t){return t.host},e.prototype.clone=function(t){return t.cloneNode(!0)},e.prototype.getElementsByClassName=function(t,e){return t.getElementsByClassName(e)},e.prototype.getElementsByTagName=function(t,e){return t.getElementsByTagName(e)},e.prototype.classList=function(t){return Array.prototype.slice.call(t.classList,0)},e.prototype.addClass=function(t,e){t.classList.add(e)},e.prototype.removeClass=function(t,e){t.classList.remove(e)},e.prototype.hasClass=function(t,e){return t.classList.contains(e)},e.prototype.setStyle=function(t,e,n){t.style[e]=n},e.prototype.removeStyle=function(t,e){t.style[e]=""},e.prototype.getStyle=function(t,e){return t.style[e]},e.prototype.hasStyle=function(t,e,n){void 0===n&&(n=null);var r=this.getStyle(t,e)||"";return n?r==n:r.length>0},e.prototype.tagName=function(t){return t.tagName},e.prototype.attributeMap=function(t){for(var e=new Map,n=t.attributes,r=0;r<n.length;r++){var o=n[r];e.set(o.name,o.value)}return e},e.prototype.hasAttribute=function(t,e){return t.hasAttribute(e)},e.prototype.hasAttributeNS=function(t,e,n){return t.hasAttributeNS(e,n)},e.prototype.getAttribute=function(t,e){return t.getAttribute(e)},e.prototype.getAttributeNS=function(t,e,n){return t.getAttributeNS(e,n)},e.prototype.setAttribute=function(t,e,n){t.setAttribute(e,n)},e.prototype.setAttributeNS=function(t,e,n,r){t.setAttributeNS(e,n,r)},e.prototype.removeAttribute=function(t,e){t.removeAttribute(e)},e.prototype.removeAttributeNS=function(t,e,n){t.removeAttributeNS(e,n)},e.prototype.templateAwareRoot=function(t){return this.isTemplateElement(t)?this.content(t):t},e.prototype.createHtmlDocument=function(){return document.implementation.createHTMLDocument("fakeTitle")},e.prototype.getBoundingClientRect=function(t){try{return t.getBoundingClientRect()}catch(t){return{top:0,bottom:0,left:0,right:0,width:0,height:0}}},e.prototype.getTitle=function(t){return document.title},e.prototype.setTitle=function(t,e){document.title=e||""},e.prototype.elementMatches=function(t,e){return t instanceof HTMLElement&&(t.matches&&t.matches(e)||t.msMatchesSelector&&t.msMatchesSelector(e)||t.webkitMatchesSelector&&t.webkitMatchesSelector(e))},e.prototype.isTemplateElement=function(t){return t instanceof HTMLElement&&"TEMPLATE"==t.nodeName},e.prototype.isTextNode=function(t){return t.nodeType===Node.TEXT_NODE},e.prototype.isCommentNode=function(t){return t.nodeType===Node.COMMENT_NODE},e.prototype.isElementNode=function(t){return t.nodeType===Node.ELEMENT_NODE},e.prototype.hasShadowRoot=function(t){return null!=t.shadowRoot&&t instanceof HTMLElement},e.prototype.isShadowRoot=function(t){return t instanceof DocumentFragment},e.prototype.importIntoDoc=function(t){return document.importNode(this.templateAwareRoot(t),!0)},e.prototype.adoptNode=function(t){return document.adoptNode(t)},e.prototype.getHref=function(t){return t.href},e.prototype.getEventKey=function(t){var e=t.key;if(null==e){if(null==(e=t.keyIdentifier))return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),t.location===U&&G.hasOwnProperty(e)&&(e=G[e]))}return B[e]||e},e.prototype.getGlobalEventTarget=function(t,e){return"window"===e?window:"document"===e?document:"body"===e?document.body:void 0},e.prototype.getHistory=function(){return window.history},e.prototype.getLocation=function(){return window.location},e.prototype.getBaseHref=function(t){var e=i();return null==e?null:s(e)},e.prototype.resetBaseElement=function(){Z=null},e.prototype.getUserAgent=function(){return window.navigator.userAgent},e.prototype.setData=function(t,e,n){this.setAttribute(t,"data-"+e,n)},e.prototype.getData=function(t,e){return this.getAttribute(t,"data-"+e)},e.prototype.getComputedStyle=function(t){return getComputedStyle(t)},e.prototype.setGlobalVar=function(t,e){u(j.C,t,e)},e.prototype.supportsWebAnimation=function(){return"function"==typeof Element.prototype.animate},e.prototype.performanceNow=function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()},e.prototype.supportsCookies=function(){return!0},e.prototype.getCookie=function(t){return a(document.cookie,t)},e.prototype.setCookie=function(t,e){document.cookie=encodeURIComponent(t)+"="+encodeURIComponent(e)},e}(H),Z=null,W=new j.D("DocumentToken"),K=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n._init(),n}return D(e,t),e.prototype._init=function(){this._location=r().getLocation(),this._history=r().getHistory()},Object.defineProperty(e.prototype,"location",{get:function(){return this._location},enumerable:!0,configurable:!0}),e.prototype.getBaseHrefFromDOM=function(){return r().getBaseHref(this._doc)},e.prototype.onPopState=function(t){r().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)},e.prototype.onHashChange=function(t){r().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)},Object.defineProperty(e.prototype,"pathname",{get:function(){return this._location.pathname},set:function(t){this._location.pathname=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"search",{get:function(){return this._location.search},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hash",{get:function(){return this._location.hash},enumerable:!0,configurable:!0}),e.prototype.pushState=function(t,e,n){c()?this._history.pushState(t,e,n):this._location.hash=n},e.prototype.replaceState=function(t,e,n){c()?this._history.replaceState(t,e,n):this._location.hash=n},e.prototype.forward=function(){this._history.forward()},e.prototype.back=function(){this._history.back()},e}(N.d);K.decorators=[{type:j.z}],K.ctorParameters=function(){return[{type:void 0,decorators:[{type:j.E,args:[W]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var X=function(){function t(t){this._doc=t,this._dom=r()}return t.prototype.addTag=function(t,e){return void 0===e&&(e=!1),t?this._getOrCreateElement(t,e):null},t.prototype.addTags=function(t,e){var n=this;return void 0===e&&(e=!1),t?t.reduce(function(t,r){return r&&t.push(n._getOrCreateElement(r,e)),t},[]):[]},t.prototype.getTag=function(t){return t?this._dom.querySelector(this._doc,"meta["+t+"]"):null},t.prototype.getTags=function(t){if(!t)return[];var e=this._dom.querySelectorAll(this._doc,"meta["+t+"]");return e?[].slice.call(e):[]},t.prototype.updateTag=function(t,e){if(!t)return null;e=e||this._parseSelector(t);var n=this.getTag(e);return n?this._setMetaElementAttributes(t,n):this._getOrCreateElement(t,!0)},t.prototype.removeTag=function(t){this.removeTagElement(this.getTag(t))},t.prototype.removeTagElement=function(t){t&&this._dom.remove(t)},t.prototype._getOrCreateElement=function(t,e){if(void 0===e&&(e=!1),!e){var n=this._parseSelector(t),r=this.getTag(n);if(r&&this._containsAttributes(t,r))return r}var o=this._dom.createElement("meta");this._setMetaElementAttributes(t,o);var i=this._dom.getElementsByTagName(this._doc,"head")[0];return this._dom.appendChild(i,o),o},t.prototype._setMetaElementAttributes=function(t,e){var n=this;return Object.keys(t).forEach(function(r){return n._dom.setAttribute(e,r,t[r])}),e},t.prototype._parseSelector=function(t){var e=t.name?"name":"property";return e+'="'+t[e]+'"'},t.prototype._containsAttributes=function(t,e){var n=this;return Object.keys(t).every(function(r){return n._dom.getAttribute(e,r)===t[r]})},t}();X.decorators=[{type:j.z}],X.ctorParameters=function(){return[{type:void 0,decorators:[{type:j.E,args:[W]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Q=new j.D("TRANSITION_ID"),J=[{provide:j.q,useFactory:l,deps:[Q,W],multi:!0}],$=function(){function t(){}return t.init=function(){n.i(j.F)(new t)},t.prototype.addToWindow=function(t){j.C.getAngularTestability=function(e,n){void 0===n&&(n=!0);var r=t.findTestabilityInTree(e,n);if(null==r)throw new Error("Could not find testability for element.");return r},j.C.getAllAngularTestabilities=function(){return t.getAllTestabilities()},j.C.getAllAngularRootElements=function(){return t.getAllRootElements()};var e=function(t){var e=j.C.getAllAngularTestabilities(),n=e.length,r=!1,o=function(e){r=r||e,0==--n&&t(r)};e.forEach(function(t){t.whenStable(o)})};j.C.frameworkStabilizers||(j.C.frameworkStabilizers=[]),j.C.frameworkStabilizers.push(e)},t.prototype.findTestabilityInTree=function(t,e,n){if(null==e)return null;var o=t.getTestability(e);return null!=o?o:n?r().isShadowRoot(e)?this.findTestabilityInTree(t,r().getHost(e),!0):this.findTestabilityInTree(t,r().parentElement(e),!0):null},t}(),Y=function(){function t(t){this._doc=t}return t.prototype.getTitle=function(){return r().getTitle(this._doc)},t.prototype.setTitle=function(t){r().setTitle(this._doc,t)},t}();Y.decorators=[{type:j.z}],Y.ctorParameters=function(){return[{type:void 0,decorators:[{type:j.E,args:[W]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var tt=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++){e=arguments[n];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o])}return t},et={ApplicationRef:j.r,NgZone:j.h},nt="ng.probe",rt="ng.coreTokens",ot=function(){function t(t,e){this.name=t,this.token=e}return t}(),it=[{provide:j.q,useFactory:f,deps:[[ot,new j.H],[j.k,new j.H]],multi:!0}],st=new j.D("EventManagerPlugins"),at=function(){function t(t,e){var n=this;this._zone=e,this._eventNameToPlugin=new Map,t.forEach(function(t){return t.manager=n}),this._plugins=t.slice().reverse()}return t.prototype.addEventListener=function(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)},t.prototype.addGlobalEventListener=function(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)},t.prototype.getZone=function(){return this._zone},t.prototype._findPluginFor=function(t){var e=this._eventNameToPlugin.get(t);if(e)return e;for(var n=this._plugins,r=0;r<n.length;r++){var o=n[r];if(o.supports(t))return this._eventNameToPlugin.set(t,o),o}throw new Error("No event manager plugin found for event "+t)},t}();at.decorators=[{type:j.z}],at.ctorParameters=function(){return[{type:Array,decorators:[{type:j.E,args:[st]}]},{type:j.h}]};var ut=function(){function t(t){this._doc=t}return t.prototype.supports=function(t){},t.prototype.addEventListener=function(t,e,n){},t.prototype.addGlobalEventListener=function(t,e,n){var o=r().getGlobalEventTarget(this._doc,t);if(!o)throw new Error("Unsupported event target "+o+" for event "+e);return this.addEventListener(o,e,n)},t}(),ct=function(){function t(){this._stylesSet=new Set}return t.prototype.addStyles=function(t){var e=this,n=new Set;t.forEach(function(t){e._stylesSet.has(t)||(e._stylesSet.add(t),n.add(t))}),this.onStylesAdded(n)},t.prototype.onStylesAdded=function(t){},t.prototype.getAllStyles=function(){return Array.from(this._stylesSet)},t}();ct.decorators=[{type:j.z}],ct.ctorParameters=function(){return[]};var lt=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n._hostNodes=new Set,n._styleNodes=new Set,n._hostNodes.add(e.head),n}return D(e,t),e.prototype._addStylesToHost=function(t,e){var n=this;t.forEach(function(t){var r=n._doc.createElement("style");r.textContent=t,n._styleNodes.add(e.appendChild(r))})},e.prototype.addHost=function(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)},e.prototype.removeHost=function(t){this._hostNodes.delete(t)},e.prototype.onStylesAdded=function(t){var e=this;this._hostNodes.forEach(function(n){return e._addStylesToHost(t,n)})},e.prototype.ngOnDestroy=function(){this._styleNodes.forEach(function(t){return r().remove(t)})},e}(ct);lt.decorators=[{type:j.z}],lt.ctorParameters=function(){return[{type:void 0,decorators:[{type:j.E,args:[W]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var pt={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/"},ft=/%COMP%/g,ht="%COMP%",dt="_nghost-"+ht,yt="_ngcontent-"+ht,mt=function(){function t(t,e){this.eventManager=t,this.sharedStylesHost=e,this.rendererByCompId=new Map,this.defaultRenderer=new gt(t)}return t.prototype.createRenderer=function(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case j.I.Emulated:var n=this.rendererByCompId.get(e.id);return n||(n=new _t(this.eventManager,this.sharedStylesHost,e),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n;case j.I.Native:return new bt(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){var r=m(e.id,e.styles,[]);this.sharedStylesHost.addStyles(r),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}},t}();mt.decorators=[{type:j.z}],mt.ctorParameters=function(){return[{type:at},{type:lt}]};var gt=function(){function t(t){this.eventManager=t,this.data=Object.create(null)}return t.prototype.destroy=function(){},t.prototype.createElement=function(t,e){return e?document.createElementNS(pt[e],t):document.createElement(t)},t.prototype.createComment=function(t){return document.createComment(t)},t.prototype.createText=function(t){return document.createTextNode(t)},t.prototype.appendChild=function(t,e){t.appendChild(e)},t.prototype.insertBefore=function(t,e,n){t&&t.insertBefore(e,n)},t.prototype.removeChild=function(t,e){t&&t.removeChild(e)},t.prototype.selectRootElement=function(t){var e="string"==typeof t?document.querySelector(t):t;if(!e)throw new Error('The selector "'+t+'" did not match any elements');return e.textContent="",e},t.prototype.parentNode=function(t){return t.parentNode},t.prototype.nextSibling=function(t){return t.nextSibling},t.prototype.setAttribute=function(t,e,n,r){if(r){e=r+":"+e;var o=pt[r];o?t.setAttributeNS(o,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)},t.prototype.removeAttribute=function(t,e,n){if(n){var r=pt[n];r?t.removeAttributeNS(r,e):t.removeAttribute(n+":"+e)}else t.removeAttribute(e)},t.prototype.addClass=function(t,e){t.classList.add(e)},t.prototype.removeClass=function(t,e){t.classList.remove(e)},t.prototype.setStyle=function(t,e,n,r){r&j.J.DashCase?t.style.setProperty(e,n,r&j.J.Important?"important":""):t.style[e]=n},t.prototype.removeStyle=function(t,e,n){n&j.J.DashCase?t.style.removeProperty(e):t.style[e]=""},t.prototype.setProperty=function(t,e,n){v(e,"property"),t[e]=n},t.prototype.setValue=function(t,e){t.nodeValue=e},t.prototype.listen=function(t,e,n){return v(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,g(n)):this.eventManager.addEventListener(t,e,g(n))},t}(),vt="@".charCodeAt(0),_t=function(t){function e(e,n,r){var o=t.call(this,e)||this;o.component=r;var i=m(r.id,r.styles,[]);return n.addStyles(i),o.contentAttr=d(r.id),o.hostAttr=y(r.id),o}return D(e,t),e.prototype.applyToHost=function(e){t.prototype.setAttribute.call(this,e,this.hostAttr,"")},e.prototype.createElement=function(e,n){var r=t.prototype.createElement.call(this,e,n);return t.prototype.setAttribute.call(this,r,this.contentAttr,""),r},e}(gt),bt=function(t){function e(e,n,r,o){var i=t.call(this,e)||this;i.sharedStylesHost=n,i.hostEl=r,i.component=o,i.shadowRoot=r.createShadowRoot(),i.sharedStylesHost.addHost(i.shadowRoot);for(var s=m(o.id,o.styles,[]),a=0;a<s.length;a++){var u=document.createElement("style");u.textContent=s[a],i.shadowRoot.appendChild(u)}return i}return D(e,t),e.prototype.nodeOrShadowRoot=function(t){return t===this.hostEl?this.shadowRoot:t},e.prototype.destroy=function(){this.sharedStylesHost.removeHost(this.shadowRoot)},e.prototype.appendChild=function(e,n){return t.prototype.appendChild.call(this,this.nodeOrShadowRoot(e),n)},e.prototype.insertBefore=function(e,n,r){return t.prototype.insertBefore.call(this,this.nodeOrShadowRoot(e),n,r)},e.prototype.removeChild=function(e,n){return t.prototype.removeChild.call(this,this.nodeOrShadowRoot(e),n)},e.prototype.parentNode=function(e){return this.nodeOrShadowRoot(t.prototype.parentNode.call(this,this.nodeOrShadowRoot(e)))},e}(gt),wt=function(t){function e(e){return t.call(this,e)||this}return D(e,t),e.prototype.supports=function(t){return!0},e.prototype.addEventListener=function(t,e,n){return t.addEventListener(e,n,!1),function(){return t.removeEventListener(e,n,!1)}},e}(ut);wt.decorators=[{type:j.z}],wt.ctorParameters=function(){return[{type:void 0,decorators:[{type:j.E,args:[W]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Ct={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},Et=new j.D("HammerGestureConfig"),Ot=function(){function t(){this.events=[],this.overrides={}}return t.prototype.buildHammer=function(t){var e=new Hammer(t);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(var n in this.overrides)e.get(n).set(this.overrides[n]);return e},t}();Ot.decorators=[{type:j.z}],Ot.ctorParameters=function(){return[]};var xt=function(t){function e(e,n){var r=t.call(this,e)||this;return r._config=n,r}return D(e,t),e.prototype.supports=function(t){if(!Ct.hasOwnProperty(t.toLowerCase())&&!this.isCustomEvent(t))return!1;if(!window.Hammer)throw new Error("Hammer.js is not loaded, can not bind "+t+" event");return!0},e.prototype.addEventListener=function(t,e,n){var r=this,o=this.manager.getZone();return e=e.toLowerCase(),o.runOutsideAngular(function(){var i=r._config.buildHammer(t),s=function(t){o.runGuarded(function(){n(t)})};return i.on(e,s),function(){return i.off(e,s)}})},e.prototype.isCustomEvent=function(t){return this._config.events.indexOf(t)>-1},e}(ut);xt.decorators=[{type:j.z}],xt.ctorParameters=function(){return[{type:void 0,decorators:[{type:j.E,args:[W]}]},{type:Ot,decorators:[{type:j.E,args:[Et]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var St=["alt","control","meta","shift"],Pt={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},At=function(t){function e(e){return t.call(this,e)||this}return D(e,t),e.prototype.supports=function(t){return null!=e.parseEventName(t)},e.prototype.addEventListener=function(t,n,o){var i=e.parseEventName(n),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return r().onAndCancel(t,i.domEventName,s)})},e.parseEventName=function(t){var n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;var o=e._normalizeKey(n.pop()),i="";if(St.forEach(function(t){var e=n.indexOf(t);e>-1&&(n.splice(e,1),i+=t+".")}),i+=o,0!=n.length||0===o.length)return null;var s={};return s.domEventName=r,s.fullKey=i,s},e.getEventFullKey=function(t){var e="",n=r().getEventKey(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),St.forEach(function(r){if(r!=n){(0,Pt[r])(t)&&(e+=r+".")}}),e+=n},e.eventCallback=function(t,n,r){return function(o){e.getEventFullKey(o)===t&&r.runGuarded(function(){return n(o)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},e}(ut);At.decorators=[{type:j.z}],At.ctorParameters=function(){return[{type:void 0,decorators:[{type:j.E,args:[W]}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var Tt=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:\/?#]*(?:[\/?#]|$))/gi,kt=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+\/]+=*$/i,Vt=null,Mt=null,Nt=C("area,br,col,hr,img,wbr"),jt=C("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),Rt=C("rp,rt"),Dt=E(Rt,jt),It=E(jt,C("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")),Ft=E(Rt,C("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")),Ht=E(Nt,It,Ft,Dt),Lt=C("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),Ut=C("srcset"),Bt=C("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"),Gt=E(Lt,Ut,Bt),zt=function(){function t(){this.sanitizedSomething=!1,this.buf=[]}return t.prototype.sanitizeChildren=function(t){for(var e=t.firstChild;e;)if(Mt.isElementNode(e)?this.startElement(e):Mt.isTextNode(e)?this.chars(Mt.nodeValue(e)):this.sanitizedSomething=!0,Mt.firstChild(e))e=Mt.firstChild(e);else for(;e;){Mt.isElementNode(e)&&this.endElement(e);var n=O(e,Mt.nextSibling(e));if(n){e=n;break}e=O(e,Mt.parentElement(e))}return this.buf.join("")},t.prototype.startElement=function(t){var e=this,n=Mt.nodeName(t).toLowerCase();if(!Ht.hasOwnProperty(n))return void(this.sanitizedSomething=!0);this.buf.push("<"),this.buf.push(n),Mt.attributeMap(t).forEach(function(t,n){var r=n.toLowerCase();if(!Gt.hasOwnProperty(r))return void(e.sanitizedSomething=!0);Lt[r]&&(t=_(t)),Ut[r]&&(t=b(t)),e.buf.push(" "),e.buf.push(n),e.buf.push('="'),e.buf.push(x(t)),e.buf.push('"')}),this.buf.push(">")},t.prototype.endElement=function(t){var e=Mt.nodeName(t).toLowerCase();Ht.hasOwnProperty(e)&&!Nt.hasOwnProperty(e)&&(this.buf.push("</"),this.buf.push(e),this.buf.push(">"))},t.prototype.chars=function(t){this.buf.push(x(t))},t}(),qt=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Zt=/([^\#-~ |!])/g,Wt="[-,.\"'%_!# a-zA-Z0-9]+",Kt="(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?",Xt="(?:rgb|hsl)a?",Qt="(?:repeating-)?(?:linear|radial)-gradient",Jt="(?:calc|attr)",$t="\\([-0-9.%, #a-zA-Z]+\\)",Yt=new RegExp("^("+Wt+"|(?:"+Kt+"|"+Xt+"|"+Qt+"|"+Jt+")"+$t+")$","g"),te=/^url\(([^)]+)\)$/,ee=function(){function t(){}return t.prototype.sanitize=function(t,e){},t.prototype.bypassSecurityTrustHtml=function(t){},t.prototype.bypassSecurityTrustStyle=function(t){},t.prototype.bypassSecurityTrustScript=function(t){},t.prototype.bypassSecurityTrustUrl=function(t){},t.prototype.bypassSecurityTrustResourceUrl=function(t){},t}(),ne=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return D(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case j.L.NONE:return e;case j.L.HTML:return e instanceof oe?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),P(this._doc,String(e)));case j.L.STYLE:return e instanceof ie?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),T(e));case j.L.SCRIPT:if(e instanceof se)return e.changingThisBreaksApplicationSecurity;throw this.checkNotSafeValue(e,"Script"),new Error("unsafe value used in a script context");case j.L.URL:return e instanceof ue||e instanceof ae?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"URL"),_(String(e)));case j.L.RESOURCE_URL:if(e instanceof ue)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)")}},e.prototype.checkNotSafeValue=function(t,e){if(t instanceof re)throw new Error("Required a safe "+e+", got a "+t.getTypeName()+" (see http://g.co/ng/security#xss)")},e.prototype.bypassSecurityTrustHtml=function(t){return new oe(t)},e.prototype.bypassSecurityTrustStyle=function(t){return new ie(t)},e.prototype.bypassSecurityTrustScript=function(t){return new se(t)},e.prototype.bypassSecurityTrustUrl=function(t){return new ae(t)},e.prototype.bypassSecurityTrustResourceUrl=function(t){return new ue(t)},e}(ee);ne.decorators=[{type:j.z}],ne.ctorParameters=function(){return[{type:void 0,decorators:[{type:j.E,args:[W]}]}]};var re=function(){function t(t){this.changingThisBreaksApplicationSecurity=t}return t.prototype.getTypeName=function(){},t.prototype.toString=function(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"},t}(),oe=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return D(e,t),e.prototype.getTypeName=function(){return"HTML"},e}(re),ie=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return D(e,t),e.prototype.getTypeName=function(){return"Style"},e}(re),se=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return D(e,t),e.prototype.getTypeName=function(){return"Script"},e}(re),ae=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return D(e,t),e.prototype.getTypeName=function(){return"URL"},e}(re),ue=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return D(e,t),e.prototype.getTypeName=function(){return"ResourceURL"},e}(re),ce=[{provide:j.M,useValue:N.e},{provide:j.N,useValue:k,multi:!0},{provide:N.d,useClass:K},{provide:W,useFactory:M,deps:[]}],le=[{provide:j.v,useExisting:ee},{provide:ee,useClass:ne}],pe=n.i(j.O)(j.P,"browser",ce),fe=function(){function t(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}return t.withServerTransition=function(e){return{ngModule:t,providers:[{provide:j.s,useValue:e.appId},{provide:Q,useExisting:j.s},J]}},t}();fe.decorators=[{type:j.A,args:[{providers:[le,{provide:j.p,useFactory:V,deps:[]},{provide:st,useClass:wt,multi:!0},{provide:st,useClass:At,multi:!0},{provide:st,useClass:xt,multi:!0},{provide:Et,useClass:Ot},mt,{provide:j.w,useExisting:mt},{provide:ct,useExisting:lt},lt,j.i,at,it,X,Y],exports:[N.b,j.o]}]}],fe.ctorParameters=function(){return[{type:fe,decorators:[{type:j.H},{type:j.Q}]}]};/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+var he="undefined"!=typeof window&&window||{},de=function(){function t(t,e){this.msPerTick=t,this.numTicks=e}return t}();(function(){function t(t){this.appRef=t.injector.get(j.r)}t.prototype.timeChangeDetection=function(t){var e=t&&t.record,n="Change Detection",o=null!=he.console.profile;e&&o&&he.console.profile(n);for(var i=r().performanceNow(),s=0;s<5||r().performanceNow()-i<500;)this.appRef.tick(),s++;var a=r().performanceNow();e&&o&&he.console.profileEnd(n);var u=(a-i)/s;return he.console.log("ran "+s+" change detection cycles"),he.console.log(u.toFixed(2)+" ms per check"),new de(u,s)}})(),function(){function t(){}t.all=function(){return function(t){return!0}},t.css=function(t){return function(e){return null!=e.nativeElement&&r().elementMatches(e.nativeElement,t)}},t.directive=function(t){return function(e){return-1!==e.providerTokens.indexOf(t)}}}(),new j.B("4.0.2")},QqRK:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("mmVS"),i=function(t){function e(e,n,r){t.call(this),this.parent=e,this.outerValue=n,this.outerIndex=r,this.index=0}return r(e,t),e.prototype._next=function(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)},e.prototype._error=function(t){this.parent.notifyError(t,this),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},e}(o.Subscriber);e.InnerSubscriber=i},RRVv:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("rCTf"),i=function(t){function e(e,n){t.call(this),this.value=e,this.scheduler=n,this._isScalar=!0,n&&(this._isScalar=!1)}return r(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){var e=t.done,n=t.value,r=t.subscriber;if(e)return void r.complete();r.next(n),r.closed||(t.done=!0,this.schedule(t))},e.prototype._subscribe=function(t){var n=this.value,r=this.scheduler;if(r)return r.schedule(e.dispatch,0,{done:!1,value:n,subscriber:t});t.next(n),t.closed||t.complete()},e}(o.Observable);e.ScalarObservable=i},SKH6:function(t,e,n){"use strict";function r(t){return"function"==typeof t}e.isFunction=r},VOfZ:function(t,e,n){"use strict";(function(t){if(e.root="object"==typeof window&&window.window===window&&window||"object"==typeof self&&self.self===self&&self||"object"==typeof t&&t.global===t&&t,!e.root)throw new Error("RxJS could not find any global context (window, self, global)")}).call(e,n("DuR2"))},WhVc:function(t,e,n){"use strict";e.errorObject={e:{}}},Xajo:function(t,e,n){"use strict";e.isArray=Array.isArray||function(t){return t&&"number"==typeof t.length}},Yh8Q:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("rCTf"),i=n("RRVv"),s=n("jBEF"),a=n("fWbP"),u=function(t){function e(e,n){t.call(this),this.array=e,this.scheduler=n,n||1!==e.length||(this._isScalar=!0,this.value=e[0])}return r(e,t),e.create=function(t,n){return new e(t,n)},e.of=function(){for(var t=[],n=0;n<arguments.length;n++)t[n-0]=arguments[n];var r=t[t.length-1];a.isScheduler(r)?t.pop():r=null;var o=t.length;return o>1?new e(t,r):1===o?new i.ScalarObservable(t[0],r):new s.EmptyObservable(r)},e.dispatch=function(t){var e=t.array,n=t.index,r=t.count,o=t.subscriber;if(n>=r)return void o.complete();o.next(e[n]),o.closed||(t.index=n+1,this.schedule(t))},e.prototype._subscribe=function(t){var n=this.array,r=n.length,o=this.scheduler;if(o)return o.schedule(e.dispatch,0,{array:n,index:0,count:r,subscriber:t});for(var i=0;i<r&&!t.closed;i++)t.next(n[i]);t.complete()},e}(o.Observable);e.ArrayObservable=u},ZJf8:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("B00U"),i=function(t){function e(e,n){t.call(this),this.subject=e,this.subscriber=n,this.closed=!1}return r(e,t),e.prototype.unsubscribe=function(){if(!this.closed){this.closed=!0;var t=this.subject,e=t.observers;if(this.subject=null,e&&0!==e.length&&!t.isStopped&&!t.closed){var n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}},e}(o.Subscription);e.SubjectSubscription=i},aQl7:function(t,e,n){"use strict";function r(t){return t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}e.isPromise=r},cbuX:function(t,e,n){"use strict";function r(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),this.lift(new a(t))}var o=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},i=n("wAkD"),s=n("CURp");e.mergeAll=r;var a=function(){function t(t){this.concurrent=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.concurrent))},t}();e.MergeAllOperator=a;var u=function(t){function e(e,n){t.call(this,e),this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0}return o(e,t),e.prototype._next=function(t){this.active<this.concurrent?(this.active++,this.add(s.subscribeToResult(this,t))):this.buffer.push(t)},e.prototype._complete=function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete()},e.prototype.notifyComplete=function(t){var e=this.buffer;this.remove(t),this.active--,e.length>0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(i.OuterSubscriber);e.MergeAllSubscriber=u},cdmN:function(t,e,n){"use strict";function r(t){var e=t.Symbol;if("function"==typeof e)return e.iterator||(e.iterator=e("iterator polyfill")),e.iterator;var n=t.Set;if(n&&"function"==typeof(new n)["@@iterator"])return"@@iterator";var r=t.Map;if(r)for(var o=Object.getOwnPropertyNames(r.prototype),i=0;i<o.length;++i){var s=o[i];if("entries"!==s&&"size"!==s&&r.prototype[s]===r.prototype.entries)return s}return"@@iterator"}var o=n("VOfZ");e.symbolIteratorPonyfill=r,e.iterator=r(o.root),e.$$iterator=e.iterator},emOw:function(t,e,n){"use strict";function r(t,e){var n;if(n="function"==typeof t?t:function(){return t},"function"==typeof e)return this.lift(new i(n,e));var r=Object.create(this,o.connectableObservableDescriptor);return r.source=this,r.subjectFactory=n,r}var o=n("sIYO");e.multicast=r;var i=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,r=this.subjectFactory(),o=n(r).subscribe(t);return o.add(e.subscribe(r)),o},t}();e.MulticastOperator=i},fWbP:function(t,e,n){"use strict";function r(t){return t&&"function"==typeof t.schedule}e.isScheduler=r},hYBY:function(t,e,n){"use strict";function r(t){var e=t.value,n=t.subscriber;n.closed||(n.next(e),n.complete())}function o(t){var e=t.err,n=t.subscriber;n.closed||n.error(e)}var i=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},s=n("VOfZ"),a=n("rCTf"),u=function(t){function e(e,n){t.call(this),this.promise=e,this.scheduler=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.prototype._subscribe=function(t){var e=this,n=this.promise,i=this.scheduler;if(null==i)this._isScalar?t.closed||(t.next(this.value),t.complete()):n.then(function(n){e.value=n,e._isScalar=!0,t.closed||(t.next(n),t.complete())},function(e){t.closed||t.error(e)}).then(null,function(t){s.root.setTimeout(function(){throw t})});else if(this._isScalar){if(!t.closed)return i.schedule(r,0,{value:this.value,subscriber:t})}else n.then(function(n){e.value=n,e._isScalar=!0,t.closed||t.add(i.schedule(r,0,{value:n,subscriber:t}))},function(e){t.closed||t.add(i.schedule(o,0,{err:e,subscriber:t}))}).then(null,function(t){s.root.setTimeout(function(){throw t})})},e}(a.Observable);e.PromiseObservable=u},"ioK+":function(t,e,n){"use strict";var r=n("hYBY");e.fromPromise=r.PromiseObservable.create},jBEF:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("rCTf"),i=function(t){function e(e){t.call(this),this.scheduler=e}return r(e,t),e.create=function(t){return new e(t)},e.dispatch=function(t){t.subscriber.complete()},e.prototype._subscribe=function(t){var n=this.scheduler;if(n)return n.schedule(e.dispatch,0,{subscriber:t});t.complete()},e}(o.Observable);e.EmptyObservable=i},kkb0:function(t,e,n){"use strict";function r(){for(var t=[],e=0;e<arguments.length;e++)t[e-0]=arguments[e];return this.lift.call(o.apply(void 0,[this].concat(t)))}function o(){for(var t=[],e=0;e<arguments.length;e++)t[e-0]=arguments[e];var n=Number.POSITIVE_INFINITY,r=null,o=t[t.length-1];return u.isScheduler(o)?(r=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof o&&(n=t.pop()),null===r&&1===t.length&&t[0]instanceof i.Observable?t[0]:new s.ArrayObservable(t,r).lift(new a.MergeAllOperator(n))}var i=n("rCTf"),s=n("Yh8Q"),a=n("cbuX"),u=n("fWbP");e.merge=r,e.mergeStatic=o},lHsB:function(t,e,n){"use strict";function r(t,e,n){if(t){if(t instanceof o.Subscriber)return t;if(t[i.rxSubscriber])return t[i.rxSubscriber]()}return t||e||n?new o.Subscriber(t,e,n):new o.Subscriber(s.empty)}var o=n("mmVS"),i=n("r8ZY"),s=n("yrou");e.toSubscriber=r},mbVC:function(t,e,n){"use strict";function r(t){var e,n=t.Symbol;return"function"==typeof n?n.observable?e=n.observable:(e=n("observable"),n.observable=e):e="@@observable",e}var o=n("VOfZ");e.getSymbolObservable=r,e.observable=r(o.root),e.$$observable=e.observable},mmVS:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("SKH6"),i=n("B00U"),s=n("yrou"),a=n("r8ZY"),u=function(t){function e(n,r,o){switch(t.call(this),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=s.empty;break;case 1:if(!n){this.destination=s.empty;break}if("object"==typeof n){n instanceof e?(this.destination=n,this.destination.add(this)):(this.syncErrorThrowable=!0,this.destination=new c(this,n));break}default:this.syncErrorThrowable=!0,this.destination=new c(this,n,r,o)}}return r(e,t),e.prototype[a.rxSubscriber]=function(){return this},e.create=function(t,n,r){var o=new e(t,n,r);return o.syncErrorThrowable=!1,o},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,t.prototype.unsubscribe.call(this))},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.destination.complete(),this.unsubscribe()},e.prototype._unsubscribeAndRecycle=function(){var t=this,e=t._parent,n=t._parents;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=e,this._parents=n,this},e}(i.Subscription);e.Subscriber=u;var c=function(t){function e(e,n,r,i){t.call(this),this._parentSubscriber=e;var a,u=this;o.isFunction(n)?a=n:n&&(a=n.next,r=n.error,i=n.complete,n!==s.empty&&(u=Object.create(n),o.isFunction(u.unsubscribe)&&this.add(u.unsubscribe.bind(u)),u.unsubscribe=this.unsubscribe.bind(this))),this._context=u,this._next=a,this._error=r,this._complete=i}return r(e,t),e.prototype.next=function(t){if(!this.isStopped&&this._next){var e=this._parentSubscriber;e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}},e.prototype.error=function(t){if(!this.isStopped){var e=this._parentSubscriber;if(this._error)e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else{if(!e.syncErrorThrowable)throw this.unsubscribe(),t;e.syncErrorValue=t,e.syncErrorThrown=!0,this.unsubscribe()}}},e.prototype.complete=function(){if(!this.isStopped){var t=this._parentSubscriber;this._complete?t.syncErrorThrowable?(this.__tryOrSetError(t,this._complete),this.unsubscribe()):(this.__tryOrUnsub(this._complete),this.unsubscribe()):this.unsubscribe()}},e.prototype.__tryOrUnsub=function(t,e){try{t.call(this._context,e)}catch(t){throw this.unsubscribe(),t}},e.prototype.__tryOrSetError=function(t,e,n){try{e.call(this._context,n)}catch(e){return t.syncErrorValue=e,t.syncErrorThrown=!0,!0}return!1},e.prototype._unsubscribe=function(){var t=this._parentSubscriber;this._context=null,this._parentSubscriber=null,t.unsubscribe()},e}(u)},r8ZY:function(t,e,n){"use strict";var r=n("VOfZ"),o=r.root.Symbol;e.rxSubscriber="function"==typeof o&&"function"==typeof o.for?o.for("rxSubscriber"):"@@rxSubscriber",e.$$rxSubscriber=e.rxSubscriber},rCTf:function(t,e,n){"use strict";var r=n("VOfZ"),o=n("lHsB"),i=n("mbVC"),s=function(){function t(t){this._isScalar=!1,t&&(this._subscribe=t)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(t,e,n){var r=this.operator,i=o.toSubscriber(t,e,n);if(r?r.call(i,this.source):i.add(this._trySubscribe(i)),i.syncErrorThrowable&&(i.syncErrorThrowable=!1,i.syncErrorThrown))throw i.syncErrorValue;return i},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(e){t.syncErrorThrown=!0,t.syncErrorValue=e,t.error(e)}},t.prototype.forEach=function(t,e){var n=this;if(e||(r.root.Rx&&r.root.Rx.config&&r.root.Rx.config.Promise?e=r.root.Rx.config.Promise:r.root.Promise&&(e=r.root.Promise)),!e)throw new Error("no Promise impl found");return new e(function(e,r){var o;o=n.subscribe(function(e){if(o)try{t(e)}catch(t){r(t),o.unsubscribe()}else t(e)},r,e)})},t.prototype._subscribe=function(t){return this.source.subscribe(t)},t.prototype[i.observable]=function(){return this},t.create=function(e){return new t(e)},t}();e.Observable=s},sIYO:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("EEr4"),i=n("rCTf"),s=n("mmVS"),a=n("B00U"),u=function(t){function e(e,n){t.call(this),this.source=e,this.subjectFactory=n,this._refCount=0}return r(e,t),e.prototype._subscribe=function(t){return this.getSubject().subscribe(t)},e.prototype.getSubject=function(){var t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject},e.prototype.connect=function(){var t=this._connection;return t||(t=this._connection=new a.Subscription,t.add(this.source.subscribe(new c(this.getSubject(),this))),t.closed?(this._connection=null,t=a.Subscription.EMPTY):this._connection=t),t},e.prototype.refCount=function(){return this.lift(new l(this))},e}(i.Observable);e.ConnectableObservable=u,e.connectableObservableDescriptor={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:u.prototype._subscribe},getSubject:{value:u.prototype.getSubject},connect:{value:u.prototype.connect},refCount:{value:u.prototype.refCount}};var c=function(t){function e(e,n){t.call(this,e),this.connectable=n}return r(e,t),e.prototype._error=function(e){this._unsubscribe(),t.prototype._error.call(this,e)},e.prototype._complete=function(){this._unsubscribe(),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}},e}(o.SubjectSubscriber),l=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var r=new p(t,n),o=e.subscribe(r);return r.closed||(r.connection=n.connect()),o},t}(),p=function(t){function e(e,n){t.call(this,e),this.connectable=n}return r(e,t),e.prototype._unsubscribe=function(){var t=this.connectable;if(!t)return void(this.connection=null);this.connectable=null;var e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);var n=this.connection,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()},e}(s.Subscriber)},t2qv:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("rCTf"),i=n("jBEF"),s=n("Xajo"),a=n("CURp"),u=n("wAkD"),c=function(t){function e(e,n){t.call(this),this.sources=e,this.resultSelector=n}return r(e,t),e.create=function(){for(var t=[],n=0;n<arguments.length;n++)t[n-0]=arguments[n];if(null===t||0===arguments.length)return new i.EmptyObservable;var r=null;return"function"==typeof t[t.length-1]&&(r=t.pop()),1===t.length&&s.isArray(t[0])&&(t=t[0]),0===t.length?new i.EmptyObservable:new e(t,r)},e.prototype._subscribe=function(t){return new l(t,this.sources,this.resultSelector)},e}(o.Observable);e.ForkJoinObservable=c;var l=function(t){function e(e,n,r){t.call(this,e),this.sources=n,this.resultSelector=r,this.completed=0,this.haveValues=0;var o=n.length;this.total=o,this.values=new Array(o);for(var i=0;i<o;i++){var s=n[i],u=a.subscribeToResult(this,s,null,i);u&&(u.outerIndex=i,this.add(u))}}return r(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.values[n]=e,o._hasValue||(o._hasValue=!0,this.haveValues++)},e.prototype.notifyComplete=function(t){var e=this.destination,n=this,r=n.haveValues,o=n.resultSelector,i=n.values,s=i.length;if(!t._hasValue)return void e.complete();if(++this.completed===s){if(r===s){var a=o?o.apply(this,i):i;e.next(a)}e.complete()}},e}(u.OuterSubscriber)},wAkD:function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},o=n("mmVS"),i=function(t){function e(){t.apply(this,arguments)}return r(e,t),e.prototype.notifyNext=function(t,e,n,r,o){this.destination.next(e)},e.prototype.notifyError=function(t,e){this.destination.error(t)},e.prototype.notifyComplete=function(t){this.destination.complete()},e}(o.Subscriber);e.OuterSubscriber=i},xAJs:function(t,e,n){"use strict";function r(t,e){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return this.lift(new s(t,e))}var o=this&&this.__extends||function(t,e){function n(){this.constructor=t}for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)},i=n("mmVS");e.map=r;var s=function(){function t(t,e){this.project=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.thisArg))},t}();e.MapOperator=s;var a=function(t){function e(e,n,r){t.call(this,e),this.project=n,this.count=0,this.thisArg=r||this}return o(e,t),e.prototype._next=function(t){var e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(t){return void this.destination.error(t)}this.destination.next(e)},e}(i.Subscriber)},yrou:function(t,e,n){"use strict";e.empty={closed:!0,next:function(t){},error:function(t){throw t},complete:function(){}}}});
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.e2e-spec.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.e2e-spec.ts
new file mode 100644 (file)
index 0000000..45c744c
--- /dev/null
@@ -0,0 +1,14 @@
+import { TodoAppPage } from './app.po';
+
+describe('todo-app App', () => {
+  let page: TodoAppPage;
+
+  beforeEach(() => {
+    page = new TodoAppPage();
+  });
+
+  it('should display message saying app works', () => {
+    page.navigateTo();
+    expect(page.getParagraphText()).toEqual('app works!');
+  });
+});
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.po.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/app.po.ts
new file mode 100644 (file)
index 0000000..063caf2
--- /dev/null
@@ -0,0 +1,11 @@
+import { browser, element, by } from 'protractor';
+
+export class TodoAppPage {
+  navigateTo() {
+    return browser.get('/');
+  }
+
+  getParagraphText() {
+    return element(by.css('app-root h1')).getText();
+  }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/tsconfig.e2e.json b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/e2e/tsconfig.e2e.json
new file mode 100644 (file)
index 0000000..ac7a373
--- /dev/null
@@ -0,0 +1,12 @@
+{
+  "extends": "../tsconfig.json",
+  "compilerOptions": {
+    "outDir": "../out-tsc/e2e",
+    "module": "commonjs",
+    "target": "es5",
+    "types":[
+      "jasmine",
+      "node"
+    ]
+  }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/karma.conf.js b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/karma.conf.js
new file mode 100644 (file)
index 0000000..84b4cd5
--- /dev/null
@@ -0,0 +1,44 @@
+// Karma configuration file, see link for more information
+// https://karma-runner.github.io/0.13/config/configuration-file.html
+
+module.exports = function (config) {
+  config.set({
+    basePath: '',
+    frameworks: ['jasmine', '@angular/cli'],
+    plugins: [
+      require('karma-jasmine'),
+      require('karma-chrome-launcher'),
+      require('karma-jasmine-html-reporter'),
+      require('karma-coverage-istanbul-reporter'),
+      require('@angular/cli/plugins/karma')
+    ],
+    client:{
+      clearContext: false // leave Jasmine Spec Runner output visible in browser
+    },
+    files: [
+      { pattern: './src/test.ts', watched: false }
+    ],
+    preprocessors: {
+      './src/test.ts': ['@angular/cli']
+    },
+    mime: {
+      'text/x-typescript': ['ts','tsx']
+    },
+    coverageIstanbulReporter: {
+      reports: [ 'html', 'lcovonly' ],
+      fixWebpackSourcePaths: true
+    },
+    angularCli: {
+      environment: 'dev'
+    },
+    reporters: config.angularCli && config.angularCli.codeCoverage
+              ? ['progress', 'coverage-istanbul']
+              : ['progress', 'kjhtml'],
+    port: 9876,
+    colors: true,
+    logLevel: config.LOG_INFO,
+    autoWatch: true,
+    browsers: ['Chrome'],
+    singleRun: false
+  });
+};
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/package.json b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/package.json
new file mode 100644 (file)
index 0000000..2f05fff
--- /dev/null
@@ -0,0 +1,46 @@
+{
+  "name": "todo-app",
+  "version": "0.0.0",
+  "license": "MIT",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "test": "ng test",
+    "lint": "ng lint",
+    "e2e": "ng e2e"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/common": "^4.0.0",
+    "@angular/compiler": "^4.0.0",
+    "@angular/core": "^4.0.0",
+    "@angular/forms": "^4.0.0",
+    "@angular/http": "^4.0.0",
+    "@angular/platform-browser": "^4.0.0",
+    "@angular/platform-browser-dynamic": "^4.0.0",
+    "@angular/router": "^4.0.0",
+    "core-js": "^2.4.1",
+    "rxjs": "^5.1.0",
+    "zone.js": "^0.8.4"
+  },
+  "devDependencies": {
+    "@angular/cli": "1.0.0",
+    "@angular/compiler-cli": "^4.0.0",
+    "@types/jasmine": "2.5.38",
+    "@types/node": "~6.0.60",
+    "codelyzer": "~2.0.0",
+    "jasmine-core": "~2.5.2",
+    "jasmine-spec-reporter": "~3.2.0",
+    "karma": "~1.4.1",
+    "karma-chrome-launcher": "~2.0.0",
+    "karma-cli": "~1.0.1",
+    "karma-jasmine": "~1.1.0",
+    "karma-jasmine-html-reporter": "^0.2.2",
+    "karma-coverage-istanbul-reporter": "^0.2.0",
+    "protractor": "~5.1.0",
+    "ts-node": "~2.0.0",
+    "tslint": "~4.5.0",
+    "typescript": "~2.2.0"
+  }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/protractor.conf.js b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/protractor.conf.js
new file mode 100644 (file)
index 0000000..1c5e1e5
--- /dev/null
@@ -0,0 +1,30 @@
+// Protractor configuration file, see link for more information
+// https://github.com/angular/protractor/blob/master/lib/config.ts
+
+const { SpecReporter } = require('jasmine-spec-reporter');
+
+exports.config = {
+  allScriptsTimeout: 11000,
+  specs: [
+    './e2e/**/*.e2e-spec.ts'
+  ],
+  capabilities: {
+    'browserName': 'chrome'
+  },
+  directConnect: true,
+  baseUrl: 'http://localhost:4200/',
+  framework: 'jasmine',
+  jasmineNodeOpts: {
+    showColors: true,
+    defaultTimeoutInterval: 30000,
+    print: function() {}
+  },
+  beforeLaunch: function() {
+    require('ts-node').register({
+      project: 'e2e/tsconfig.e2e.json'
+    });
+  },
+  onPrepare() {
+    jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
+  }
+};
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.html b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.html
new file mode 100644 (file)
index 0000000..9a5a568
--- /dev/null
@@ -0,0 +1,20 @@
+<section class="todoapp">
+  <header class="header">
+    <h1>Todos</h1>
+    <input class="new-todo" placeholder="What needs to be done?" autofocus="" [(ngModel)]="newTodo.title" (keyup.enter)="addTodo()">
+  </header>
+  <section class="main" *ngIf="todos.length > 0">
+    <ul class="todo-list">
+      <li *ngFor="let todo of todos" [class.completed]="todo.complete">
+        <div class="view">
+          <input class="toggle" type="checkbox" (click)="toggleTodoComplete(todo)" [checked]="todo.complete">
+          <label>{{todo.title}}</label>
+          <button class="destroy" (click)="removeTodo(todo)"></button>
+        </div>
+      </li>
+    </ul>
+  </section>
+  <footer class="footer" *ngIf="todos.length > 0">
+    <span class="todo-count"><strong>{{todos.length}}</strong> {{todos.length == 1 ? 'item' : 'items'}} left</span>
+  </footer>
+</section>
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.spec.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.spec.ts
new file mode 100644 (file)
index 0000000..a8e9525
--- /dev/null
@@ -0,0 +1,38 @@
+/* tslint:disable:no-unused-variable */
+
+import { TestBed, async } from '@angular/core/testing';
+import { AppComponent } from './app.component';
+import { FormsModule } from '@angular/forms';
+import { Todo } from './todo';
+
+describe('AppComponent', () => {
+  beforeEach(() => {
+    TestBed.configureTestingModule({
+      imports: [
+        FormsModule
+      ],
+      declarations: [
+        AppComponent
+      ],
+    });
+  });
+
+  it('should create the app', async(() => {
+    let fixture = TestBed.createComponent(AppComponent);
+    let app = fixture.debugElement.componentInstance;
+    expect(app).toBeTruthy();
+  }));
+
+  it(`should have a newTodo todo`, async(() => {
+    let fixture = TestBed.createComponent(AppComponent);
+    let app = fixture.debugElement.componentInstance;
+    expect(app.newTodo instanceof Todo).toBeTruthy()
+  }));
+
+  it('should display "Todos" in h1 tag', async(() => {
+    let fixture = TestBed.createComponent(AppComponent);
+    fixture.detectChanges();
+    let compiled = fixture.debugElement.nativeElement;
+    expect(compiled.querySelector('h1').textContent).toContain('Todos');
+  }));
+});
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.component.ts
new file mode 100644 (file)
index 0000000..68a19e6
--- /dev/null
@@ -0,0 +1,35 @@
+import {Component} from '@angular/core';
+import {Todo} from './todo';
+import {TodoDataService} from './todo-data.service';
+
+@Component({
+  selector: 'app-root',
+  templateUrl: './app.component.html',
+  styleUrls: ['./app.component.css'],
+  providers: [TodoDataService]
+})
+export class AppComponent {
+
+  newTodo: Todo = new Todo();
+
+  constructor(private todoDataService: TodoDataService) {
+  }
+
+  addTodo() {
+    this.todoDataService.addTodo(this.newTodo);
+    this.newTodo = new Todo();
+  }
+
+  toggleTodoComplete(todo) {
+    this.todoDataService.toggleTodoComplete(todo);
+  }
+
+  removeTodo(todo) {
+    this.todoDataService.deleteTodoById(todo.id);
+  }
+
+  get todos() {
+    return this.todoDataService.getAllTodos();
+  }
+
+}
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.module.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/app.module.ts
new file mode 100644 (file)
index 0000000..67ae491
--- /dev/null
@@ -0,0 +1,20 @@
+import { BrowserModule } from '@angular/platform-browser';
+import { NgModule } from '@angular/core';
+import { FormsModule } from '@angular/forms';
+import { HttpModule } from '@angular/http';
+
+import { AppComponent } from './app.component';
+
+@NgModule({
+  declarations: [
+    AppComponent
+  ],
+  imports: [
+    BrowserModule,
+    FormsModule,
+    HttpModule
+  ],
+  providers: [],
+  bootstrap: [AppComponent]
+})
+export class AppModule { }
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.spec.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.spec.ts
new file mode 100644 (file)
index 0000000..1a15db9
--- /dev/null
@@ -0,0 +1,106 @@
+import {TestBed, async, inject} from '@angular/core/testing';
+import {Todo} from './todo';
+import {TodoDataService} from './todo-data.service';
+
+describe('TodoDataService', () => {
+  beforeEach(() => {
+    TestBed.configureTestingModule({
+      providers: [TodoDataService]
+    });
+  });
+
+  it('should ...', inject([TodoDataService], (service: TodoDataService) => {
+    expect(service).toBeTruthy();
+  }));
+
+  describe('#getAllTodos()', () => {
+
+    it('should return an empty array by default', inject([TodoDataService], (service: TodoDataService) => {
+      expect(service.getAllTodos()).toEqual([]);
+    }));
+
+    it('should return all todos', inject([TodoDataService], (service: TodoDataService) => {
+      let todo1 = new Todo({title: 'Hello 1', complete: false});
+      let todo2 = new Todo({title: 'Hello 2', complete: true});
+      service.addTodo(todo1);
+      service.addTodo(todo2);
+      expect(service.getAllTodos()).toEqual([todo1, todo2]);
+    }));
+
+  });
+
+  describe('#save(todo)', () => {
+
+    it('should automatically assign an incrementing id', inject([TodoDataService], (service: TodoDataService) => {
+      let todo1 = new Todo({title: 'Hello 1', complete: false});
+      let todo2 = new Todo({title: 'Hello 2', complete: true});
+      service.addTodo(todo1);
+      service.addTodo(todo2);
+      expect(service.getTodoById(1)).toEqual(todo1);
+      expect(service.getTodoById(2)).toEqual(todo2);
+    }));
+
+  });
+
+  describe('#deleteTodoById(id)', () => {
+
+    it('should remove todo with the corresponding id', inject([TodoDataService], (service: TodoDataService) => {
+      let todo1 = new Todo({title: 'Hello 1', complete: false});
+      let todo2 = new Todo({title: 'Hello 2', complete: true});
+      service.addTodo(todo1);
+      service.addTodo(todo2);
+      expect(service.getAllTodos()).toEqual([todo1, todo2]);
+      service.deleteTodoById(1);
+      expect(service.getAllTodos()).toEqual([todo2]);
+      service.deleteTodoById(2);
+      expect(service.getAllTodos()).toEqual([]);
+    }));
+
+    it('should not removing anything if todo with corresponding id is not found', inject([TodoDataService], (service: TodoDataService) => {
+      let todo1 = new Todo({title: 'Hello 1', complete: false});
+      let todo2 = new Todo({title: 'Hello 2', complete: true});
+      service.addTodo(todo1);
+      service.addTodo(todo2);
+      expect(service.getAllTodos()).toEqual([todo1, todo2]);
+      service.deleteTodoById(3);
+      expect(service.getAllTodos()).toEqual([todo1, todo2]);
+    }));
+
+  });
+
+  describe('#updateTodoById(id, values)', () => {
+
+    it('should return todo with the corresponding id and updated data', inject([TodoDataService], (service: TodoDataService) => {
+      let todo = new Todo({title: 'Hello 1', complete: false});
+      service.addTodo(todo);
+      let updatedTodo = service.updateTodoById(1, {
+        title: 'new title'
+      });
+      expect(updatedTodo.title).toEqual('new title');
+    }));
+
+    it('should return null if todo is not found', inject([TodoDataService], (service: TodoDataService) => {
+      let todo = new Todo({title: 'Hello 1', complete: false});
+      service.addTodo(todo);
+      let updatedTodo = service.updateTodoById(2, {
+        title: 'new title'
+      });
+      expect(updatedTodo).toEqual(null);
+    }));
+
+  });
+
+  describe('#toggleTodoComplete(todo)', () => {
+
+    it('should return the updated todo with inverse complete status', inject([TodoDataService], (service: TodoDataService) => {
+      let todo = new Todo({title: 'Hello 1', complete: false});
+      service.addTodo(todo);
+      let updatedTodo = service.toggleTodoComplete(todo);
+      expect(updatedTodo.complete).toEqual(true);
+      service.toggleTodoComplete(todo);
+      expect(updatedTodo.complete).toEqual(false);
+    }));
+
+  });
+
+});
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo-data.service.ts
new file mode 100644 (file)
index 0000000..509e37d
--- /dev/null
@@ -0,0 +1,63 @@
+import {Injectable} from '@angular/core';
+import {Todo} from './todo';
+
+@Injectable()
+export class TodoDataService {
+
+  // Placeholder for last id so we can simulate
+  // automatic incrementing of id's
+  lastId: number = 0;
+
+  // Placeholder for todo's
+  todos: Todo[] = [];
+
+  constructor() {
+  }
+
+  // Simulate POST /todos
+  addTodo(todo: Todo): TodoDataService {
+    if (!todo.id) {
+      todo.id = ++this.lastId;
+    }
+    this.todos.push(todo);
+    return this;
+  }
+
+  // Simulate DELETE /todos/:id
+  deleteTodoById(id: number): TodoDataService {
+    this.todos = this.todos
+      .filter(todo => todo.id !== id);
+    return this;
+  }
+
+  // Simulate PUT /todos/:id
+  updateTodoById(id: number, values: Object = {}): Todo {
+    let todo = this.getTodoById(id);
+    if (!todo) {
+      return null;
+    }
+    Object.assign(todo, values);
+    return todo;
+  }
+
+  // Simulate GET /todos
+  getAllTodos(): Todo[] {
+    return this.todos;
+  }
+
+  // Simulate GET /todos/:id
+  getTodoById(id: number): Todo {
+    return this.todos
+      .filter(todo => todo.id === id)
+      .pop();
+  }
+
+  // Toggle todo complete
+  toggleTodoComplete(todo: Todo){
+    let updatedTodo = this.updateTodoById(todo.id, {
+      complete: !todo.complete
+    });
+    return updatedTodo;
+  }
+
+}
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.spec.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.spec.ts
new file mode 100644 (file)
index 0000000..5a54add
--- /dev/null
@@ -0,0 +1,16 @@
+import {Todo} from './todo';
+
+describe('Todo', () => {
+  it('should create an instance', () => {
+    expect(new Todo()).toBeTruthy();
+  });
+
+  it('should accept values in the constructor', () => {
+    let todo = new Todo({
+      title: 'hello',
+      complete: true
+    });
+    expect(todo.title).toEqual('hello');
+    expect(todo.complete).toEqual(true);
+  });
+});
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/app/todo.ts
new file mode 100644 (file)
index 0000000..a1d0a76
--- /dev/null
@@ -0,0 +1,9 @@
+export class Todo {
+  id: number;
+  title: string = '';
+  complete: boolean = false;
+
+  constructor(values: Object = {}) {
+    Object.assign(this, values);
+  }
+}
\ No newline at end of file
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-app.css b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-app.css
new file mode 100644 (file)
index 0000000..10e3d2f
--- /dev/null
@@ -0,0 +1,370 @@
+html,
+body {
+    margin: 0;
+    padding: 0;
+}
+
+button {
+    margin: 0;
+    padding: 0;
+    border: 0;
+    background: none;
+    font-size: 100%;
+    vertical-align: baseline;
+    font-family: inherit;
+    font-weight: inherit;
+    color: inherit;
+    -webkit-appearance: none;
+    appearance: none;
+    -webkit-font-smoothing: antialiased;
+    -moz-osx-font-smoothing: grayscale;
+}
+
+body {
+    font: 14px 'Helvetica Neue', Helvetica, Arial, sans-serif;
+    line-height: 1.4em;
+    background: #f5f5f5;
+    color: #4d4d4d;
+    min-width: 230px;
+    max-width: 550px;
+    margin: 0 auto;
+    -webkit-font-smoothing: antialiased;
+    -moz-osx-font-smoothing: grayscale;
+    font-weight: 300;
+}
+
+:focus {
+    outline: 0;
+}
+
+.hidden {
+    display: none;
+}
+
+.todoapp {
+    background: #fff;
+    margin: 130px 0 40px 0;
+    position: relative;
+    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2),
+                0 25px 50px 0 rgba(0, 0, 0, 0.1);
+}
+
+.todoapp input::-webkit-input-placeholder {
+    font-style: italic;
+    font-weight: 300;
+    color: #e6e6e6;
+}
+
+.todoapp input::-moz-placeholder {
+    font-style: italic;
+    font-weight: 300;
+    color: #e6e6e6;
+}
+
+.todoapp input::input-placeholder {
+    font-style: italic;
+    font-weight: 300;
+    color: #e6e6e6;
+}
+
+.todoapp h1 {
+    position: absolute;
+    top: -155px;
+    width: 100%;
+    font-size: 100px;
+    font-weight: 100;
+    text-align: center;
+    color: rgba(175, 47, 47, 0.15);
+    -webkit-text-rendering: optimizeLegibility;
+    -moz-text-rendering: optimizeLegibility;
+    text-rendering: optimizeLegibility;
+}
+
+.new-todo,
+.edit {
+    position: relative;
+    margin: 0;
+    width: 100%;
+    font-size: 24px;
+    font-family: inherit;
+    font-weight: inherit;
+    line-height: 1.4em;
+    border: 0;
+    color: inherit;
+    padding: 6px;
+    border: 1px solid #999;
+    box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2);
+    box-sizing: border-box;
+    -webkit-font-smoothing: antialiased;
+    -moz-osx-font-smoothing: grayscale;
+}
+
+.new-todo {
+    padding: 16px 16px 16px 60px;
+    border: none;
+    background: rgba(0, 0, 0, 0.003);
+    box-shadow: inset 0 -2px 1px rgba(0,0,0,0.03);
+}
+
+.main {
+    position: relative;
+    z-index: 2;
+    border-top: 1px solid #e6e6e6;
+}
+
+label[for='toggle-all'] {
+    display: none;
+}
+
+.toggle-all {
+    position: absolute;
+    top: -55px;
+    left: -12px;
+    width: 60px;
+    height: 34px;
+    text-align: center;
+    border: none; /* Mobile Safari */
+}
+
+.toggle-all:before {
+    content: '❯';
+    font-size: 22px;
+    color: #e6e6e6;
+    padding: 10px 27px 10px 27px;
+}
+
+.toggle-all:checked:before {
+    color: #737373;
+}
+
+.todo-list {
+    margin: 0;
+    padding: 0;
+    list-style: none;
+}
+
+.todo-list li {
+    position: relative;
+    font-size: 24px;
+    border-bottom: 1px solid #ededed;
+}
+
+.todo-list li:last-child {
+    border-bottom: none;
+}
+
+.todo-list li.editing {
+    border-bottom: none;
+    padding: 0;
+}
+
+.todo-list li.editing .edit {
+    display: block;
+    width: 506px;
+    padding: 12px 16px;
+    margin: 0 0 0 43px;
+}
+
+.todo-list li.editing .view {
+    display: none;
+}
+
+.todo-list li .toggle {
+    text-align: center;
+    width: 40px;
+    /* auto, since non-WebKit browsers doesn't support input styling */
+    height: auto;
+    position: absolute;
+    top: 0;
+    bottom: 0;
+    margin: auto 0;
+    border: none; /* Mobile Safari */
+    -webkit-appearance: none;
+    appearance: none;
+}
+
+.todo-list li .toggle:after {
+    content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="-10 -18 100 135"><circle cx="50" cy="50" r="50" fill="none" stroke="#ededed" stroke-width="3"/></svg>');
+}
+
+.todo-list li .toggle:checked:after {
+    content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="-10 -18 100 135"><circle cx="50" cy="50" r="50" fill="none" stroke="#bddad5" stroke-width="3"/><path fill="#5dc2af" d="M72 25L42 71 27 56l-4 4 20 20 34-52z"/></svg>');
+}
+
+.todo-list li label {
+    word-break: break-all;
+    padding: 15px 60px 15px 15px;
+    margin-left: 45px;
+    display: block;
+    line-height: 1.2;
+    transition: color 0.4s;
+}
+
+.todo-list li.completed label {
+    color: #d9d9d9;
+    text-decoration: line-through;
+}
+
+.todo-list li .destroy {
+    display: none;
+    position: absolute;
+    top: 0;
+    right: 10px;
+    bottom: 0;
+    width: 40px;
+    height: 40px;
+    margin: auto 0;
+    font-size: 30px;
+    color: #cc9a9a;
+    margin-bottom: 11px;
+    transition: color 0.2s ease-out;
+}
+
+.todo-list li .destroy:hover {
+    color: #af5b5e;
+}
+
+.todo-list li .destroy:after {
+    content: '×';
+}
+
+.todo-list li:hover .destroy {
+    display: block;
+}
+
+.todo-list li .edit {
+    display: none;
+}
+
+.todo-list li.editing:last-child {
+    margin-bottom: -1px;
+}
+
+.footer {
+    color: #777;
+    padding: 10px 15px;
+    height: 20px;
+    text-align: center;
+    border-top: 1px solid #e6e6e6;
+}
+
+.footer:before {
+    content: '';
+    position: absolute;
+    right: 0;
+    bottom: 0;
+    left: 0;
+    height: 50px;
+    overflow: hidden;
+    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2),
+                0 8px 0 -3px #f6f6f6,
+                0 9px 1px -3px rgba(0, 0, 0, 0.2),
+                0 16px 0 -6px #f6f6f6,
+                0 17px 2px -6px rgba(0, 0, 0, 0.2);
+}
+
+.todo-count {
+    float: left;
+    text-align: left;
+}
+
+.todo-count strong {
+    font-weight: 300;
+}
+
+.filters {
+    margin: 0;
+    padding: 0;
+    list-style: none;
+    position: absolute;
+    right: 0;
+    left: 0;
+}
+
+.filters li {
+    display: inline;
+}
+
+.filters li a {
+    color: inherit;
+    margin: 3px;
+    padding: 3px 7px;
+    text-decoration: none;
+    border: 1px solid transparent;
+    border-radius: 3px;
+}
+
+.filters li a:hover {
+    border-color: rgba(175, 47, 47, 0.1);
+}
+
+.filters li a.selected {
+    border-color: rgba(175, 47, 47, 0.2);
+}
+
+.clear-completed,
+html .clear-completed:active {
+    float: right;
+    position: relative;
+    line-height: 20px;
+    text-decoration: none;
+    cursor: pointer;
+}
+
+.clear-completed:hover {
+    text-decoration: underline;
+}
+
+.info {
+    margin: 65px auto 0;
+    color: #bfbfbf;
+    font-size: 10px;
+    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+    text-align: center;
+}
+
+.info p {
+    line-height: 1;
+}
+
+.info a {
+    color: inherit;
+    text-decoration: none;
+    font-weight: 400;
+}
+
+.info a:hover {
+    text-decoration: underline;
+}
+
+/*
+    Hack to remove background from Mobile Safari.
+    Can't use it globally since it destroys checkboxes in Firefox
+*/
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+    .toggle-all,
+    .todo-list li .toggle {
+        background: none;
+    }
+
+    .todo-list li .toggle {
+        height: 40px;
+    }
+
+    .toggle-all {
+        -webkit-transform: rotate(90deg);
+        transform: rotate(90deg);
+        -webkit-appearance: none;
+        appearance: none;
+    }
+}
+
+@media (max-width: 430px) {
+    .footer {
+        height: 50px;
+    }
+
+    .filters {
+        bottom: 10px;
+    }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-common.css b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-common.css
new file mode 100644 (file)
index 0000000..4d25d3c
--- /dev/null
@@ -0,0 +1,141 @@
+hr {
+    margin: 20px 0;
+    border: 0;
+    border-top: 1px dashed #c5c5c5;
+    border-bottom: 1px dashed #f7f7f7;
+}
+
+.learn a {
+    font-weight: normal;
+    text-decoration: none;
+    color: #b83f45;
+}
+
+.learn a:hover {
+    text-decoration: underline;
+    color: #787e7e;
+}
+
+.learn h3,
+.learn h4,
+.learn h5 {
+    margin: 10px 0;
+    font-weight: 500;
+    line-height: 1.2;
+    color: #000;
+}
+
+.learn h3 {
+    font-size: 24px;
+}
+
+.learn h4 {
+    font-size: 18px;
+}
+
+.learn h5 {
+    margin-bottom: 0;
+    font-size: 14px;
+}
+
+.learn ul {
+    padding: 0;
+    margin: 0 0 30px 25px;
+}
+
+.learn li {
+    line-height: 20px;
+}
+
+.learn p {
+    font-size: 15px;
+    font-weight: 300;
+    line-height: 1.3;
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+#issue-count {
+    display: none;
+}
+
+.quote {
+    border: none;
+    margin: 20px 0 60px 0;
+}
+
+.quote p {
+    font-style: italic;
+}
+
+.quote p:before {
+    content: '“';
+    font-size: 50px;
+    opacity: .15;
+    position: absolute;
+    top: -20px;
+    left: 3px;
+}
+
+.quote p:after {
+    content: '”';
+    font-size: 50px;
+    opacity: .15;
+    position: absolute;
+    bottom: -42px;
+    right: 3px;
+}
+
+.quote footer {
+    position: absolute;
+    bottom: -40px;
+    right: 0;
+}
+
+.quote footer img {
+    border-radius: 3px;
+}
+
+.quote footer a {
+    margin-left: 5px;
+    vertical-align: middle;
+}
+
+.speech-bubble {
+    position: relative;
+    padding: 10px;
+    background: rgba(0, 0, 0, .04);
+    border-radius: 5px;
+}
+
+.speech-bubble:after {
+    content: '';
+    position: absolute;
+    top: 100%;
+    right: 30px;
+    border: 13px solid transparent;
+    border-top-color: rgba(0, 0, 0, .04);
+}
+
+.learn-bar > .learn {
+    position: absolute;
+    width: 272px;
+    top: 8px;
+    left: -300px;
+    padding: 10px;
+    border-radius: 5px;
+    background-color: rgba(255, 255, 255, .6);
+    transition-property: left;
+    transition-duration: 500ms;
+}
+
+@media (min-width: 899px) {
+    .learn-bar {
+        width: auto;
+        padding-left: 300px;
+    }
+
+    .learn-bar > .learn {
+        left: 8px;
+    }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.prod.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.prod.ts
new file mode 100644 (file)
index 0000000..3612073
--- /dev/null
@@ -0,0 +1,3 @@
+export const environment = {
+  production: true
+};
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/environments/environment.ts
new file mode 100644 (file)
index 0000000..b7f639a
--- /dev/null
@@ -0,0 +1,8 @@
+// The file contents for the current environment will overwrite these during build.
+// The build system defaults to the dev environment which uses `environment.ts`, but if you do
+// `ng build --env=prod` then `environment.prod.ts` will be used instead.
+// The list of which env maps to which file can be found in `.angular-cli.json`.
+
+export const environment = {
+  production: false
+};
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/favicon.ico b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/favicon.ico
new file mode 100644 (file)
index 0000000..8081c7c
Binary files /dev/null and b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/favicon.ico differ
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/index.html b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/index.html
new file mode 100644 (file)
index 0000000..6c42b4f
--- /dev/null
@@ -0,0 +1,17 @@
+<!doctype html>
+<html>
+<head>
+  <meta charset="utf-8">
+  <title>TodoApp</title>
+  <base href="/">
+
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+  <link rel="icon" type="image/x-icon" href="favicon.ico">
+  <link rel="stylesheet" href="assets/css/todomvc-common.css">
+  <link rel="stylesheet" href="assets/css/todomvc-app.css">
+</head>
+<body>
+  <app-root>Loading...</app-root>
+  <!-- Credits: Addy Osmani -->
+</body>
+</html>
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/main.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/main.ts
new file mode 100644 (file)
index 0000000..a9ca1ca
--- /dev/null
@@ -0,0 +1,11 @@
+import { enableProdMode } from '@angular/core';
+import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
+
+import { AppModule } from './app/app.module';
+import { environment } from './environments/environment';
+
+if (environment.production) {
+  enableProdMode();
+}
+
+platformBrowserDynamic().bootstrapModule(AppModule);
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/polyfills.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/polyfills.ts
new file mode 100644 (file)
index 0000000..53bdaf1
--- /dev/null
@@ -0,0 +1,68 @@
+/**
+ * This file includes polyfills needed by Angular and is loaded before the app.
+ * You can add your own extra polyfills to this file.
+ *
+ * This file is divided into 2 sections:
+ *   1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.
+ *   2. Application imports. Files imported after ZoneJS that should be loaded before your main
+ *      file.
+ *
+ * The current setup is for so-called "evergreen" browsers; the last versions of browsers that
+ * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),
+ * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.
+ *
+ * Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html
+ */
+
+/***************************************************************************************************
+ * BROWSER POLYFILLS
+ */
+
+/** IE9, IE10 and IE11 requires all of the following polyfills. **/
+// import 'core-js/es6/symbol';
+// import 'core-js/es6/object';
+// import 'core-js/es6/function';
+// import 'core-js/es6/parse-int';
+// import 'core-js/es6/parse-float';
+// import 'core-js/es6/number';
+// import 'core-js/es6/math';
+// import 'core-js/es6/string';
+// import 'core-js/es6/date';
+// import 'core-js/es6/array';
+// import 'core-js/es6/regexp';
+// import 'core-js/es6/map';
+// import 'core-js/es6/set';
+
+/** IE10 and IE11 requires the following for NgClass support on SVG elements */
+// import 'classlist.js';  // Run `npm install --save classlist.js`.
+
+/** IE10 and IE11 requires the following to support `@angular/animation`. */
+// import 'web-animations-js';  // Run `npm install --save web-animations-js`.
+
+
+/** Evergreen browsers require these. **/
+import 'core-js/es6/reflect';
+import 'core-js/es7/reflect';
+
+
+/** ALL Firefox browsers require the following to support `@angular/animation`. **/
+// import 'web-animations-js';  // Run `npm install --save web-animations-js`.
+
+
+
+/***************************************************************************************************
+ * Zone JS is required by Angular itself.
+ */
+import 'zone.js/dist/zone';  // Included with Angular CLI.
+
+
+
+/***************************************************************************************************
+ * APPLICATION IMPORTS
+ */
+
+/**
+ * Date, currency, decimal and percent pipes.
+ * Needed for: All but Chrome, Firefox, Edge, IE11 and Safari 10
+ */
+// import 'intl';  // Run `npm install --save intl`.
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/styles.css b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/styles.css
new file mode 100644 (file)
index 0000000..90d4ee0
--- /dev/null
@@ -0,0 +1 @@
+/* You can add global styles to this file, and also import other style files */
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/test.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/test.ts
new file mode 100644 (file)
index 0000000..9bf7226
--- /dev/null
@@ -0,0 +1,32 @@
+// This file is required by karma.conf.js and loads recursively all the .spec and framework files
+
+import 'zone.js/dist/long-stack-trace-zone';
+import 'zone.js/dist/proxy.js';
+import 'zone.js/dist/sync-test';
+import 'zone.js/dist/jasmine-patch';
+import 'zone.js/dist/async-test';
+import 'zone.js/dist/fake-async-test';
+import { getTestBed } from '@angular/core/testing';
+import {
+  BrowserDynamicTestingModule,
+  platformBrowserDynamicTesting
+} from '@angular/platform-browser-dynamic/testing';
+
+// Unfortunately there's no typing for the `__karma__` variable. Just declare it as any.
+declare var __karma__: any;
+declare var require: any;
+
+// Prevent Karma from running prematurely.
+__karma__.loaded = function () {};
+
+// First, initialize the Angular testing environment.
+getTestBed().initTestEnvironment(
+  BrowserDynamicTestingModule,
+  platformBrowserDynamicTesting()
+);
+// Then we find all the tests.
+const context = require.context('./', true, /\.spec\.ts$/);
+// And load the modules.
+context.keys().map(context);
+// Finally, start Karma to run the tests.
+__karma__.start();
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.app.json b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.app.json
new file mode 100644 (file)
index 0000000..5e2507d
--- /dev/null
@@ -0,0 +1,13 @@
+{
+  "extends": "../tsconfig.json",
+  "compilerOptions": {
+    "outDir": "../out-tsc/app",
+    "module": "es2015",
+    "baseUrl": "",
+    "types": []
+  },
+  "exclude": [
+    "test.ts",
+    "**/*.spec.ts"
+  ]
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.spec.json b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/tsconfig.spec.json
new file mode 100644 (file)
index 0000000..510e3f1
--- /dev/null
@@ -0,0 +1,20 @@
+{
+  "extends": "../tsconfig.json",
+  "compilerOptions": {
+    "outDir": "../out-tsc/spec",
+    "module": "commonjs",
+    "target": "es5",
+    "baseUrl": "",
+    "types": [
+      "jasmine",
+      "node"
+    ]
+  },
+  "files": [
+    "test.ts"
+  ],
+  "include": [
+    "**/*.spec.ts",
+    "**/*.d.ts"
+  ]
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/typings.d.ts b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/src/typings.d.ts
new file mode 100644 (file)
index 0000000..ef5c7bd
--- /dev/null
@@ -0,0 +1,5 @@
+/* SystemJS module definition */
+declare var module: NodeModule;
+interface NodeModule {
+  id: string;
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/tsconfig.json b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/tsconfig.json
new file mode 100644 (file)
index 0000000..a35a8ee
--- /dev/null
@@ -0,0 +1,20 @@
+{
+  "compileOnSave": false,
+  "compilerOptions": {
+    "outDir": "./dist/out-tsc",
+    "baseUrl": "src",
+    "sourceMap": true,
+    "declaration": false,
+    "moduleResolution": "node",
+    "emitDecoratorMetadata": true,
+    "experimentalDecorators": true,
+    "target": "es5",
+    "typeRoots": [
+      "node_modules/@types"
+    ],
+    "lib": [
+      "es2016",
+      "dom"
+    ]
+  }
+}
diff --git a/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/tslint.json b/PerformanceTests/Speedometer/resources/todomvc/architecture-examples/angular/tslint.json
new file mode 100644 (file)
index 0000000..9113f13
--- /dev/null
@@ -0,0 +1,116 @@
+{
+  "rulesDirectory": [
+    "node_modules/codelyzer"
+  ],
+  "rules": {
+    "callable-types": true,
+    "class-name": true,
+    "comment-format": [
+      true,
+      "check-space"
+    ],
+    "curly": true,
+    "eofline": true,
+    "forin": true,
+    "import-blacklist": [true, "rxjs"],
+    "import-spacing": true,
+    "indent": [
+      true,
+      "spaces"
+    ],
+    "interface-over-type-literal": true,
+    "label-position": true,
+    "max-line-length": [
+      true,
+      140
+    ],
+    "member-access": false,
+    "member-ordering": [
+      true,
+      "static-before-instance",
+      "variables-before-functions"
+    ],
+    "no-arg": true,
+    "no-bitwise": true,
+    "no-console": [
+      true,
+      "debug",
+      "info",
+      "time",
+      "timeEnd",
+      "trace"
+    ],
+    "no-construct": true,
+    "no-debugger": true,
+    "no-duplicate-variable": true,
+    "no-empty": false,
+    "no-empty-interface": true,
+    "no-eval": true,
+    "no-inferrable-types": [true, "ignore-params"],
+    "no-shadowed-variable": true,
+    "no-string-literal": false,
+    "no-string-throw": true,
+    "no-switch-case-fall-through": true,
+    "no-trailing-whitespace": true,
+    "no-unused-expression": true,
+    "no-use-before-declare": true,
+    "no-var-keyword": true,
+    "object-literal-sort-keys": false,
+    "one-line": [
+      true,
+      "check-open-brace",
+      "check-catch",
+      "check-else",
+      "check-whitespace"
+    ],
+    "prefer-const": true,
+    "quotemark": [
+      true,
+      "single"
+    ],
+    "radix": true,
+    "semicolon": [
+      "always"
+    ],
+    "triple-equals": [
+      true,
+      "allow-null-check"
+    ],
+    "typedef-whitespace": [
+      true,
+      {
+        "call-signature": "nospace",
+        "index-signature": "nospace",
+        "parameter": "nospace",
+        "property-declaration": "nospace",
+        "variable-declaration": "nospace"
+      }
+    ],
+    "typeof-compare": true,
+    "unified-signatures": true,
+    "variable-name": false,
+    "whitespace": [
+      true,
+      "check-branch",
+      "check-decl",
+      "check-operator",
+      "check-separator",
+      "check-type"
+    ],
+
+    "directive-selector": [true, "attribute", "app", "camelCase"],
+    "component-selector": [true, "element", "app", "kebab-case"],
+    "use-input-property-decorator": true,
+    "use-output-property-decorator": true,
+    "use-host-property-decorator": true,
+    "no-input-rename": true,
+    "no-output-rename": true,
+    "use-life-cycle-interface": true,
+    "use-pipe-transform-interface": true,
+    "component-class-suffix": true,
+    "directive-class-suffix": true,
+    "no-access-missing-member": true,
+    "templates-use-public": true,
+    "invoke-injectable": true
+  }
+}